单片机项目总结(一)-- 稳定性
以前只写桌面软件和 Web 程序,感觉一个稍有规模的软件要想做到良好的稳定性是要下一番功夫的,更不要说系统软件、内核模块、操作系统了这些了,因为他们确实太复杂了。
与此相对的,初涉单片机的时候,就感觉这东西很简单,也很难出故障,这个感觉和平常的经验也相符,毕竟,你什么时候看到过电子表死机?遥控器死机?刮胡刀死机?电梯死机?因为他们的逻辑就那么简单,根本就不可能死嘛……
不过现在才明白,如果你在实验室里做个电子玩具,那么以上是成立的,当你准备把这个玩具做成产品的时候,那么诸多问题就来了:你的产品也许不会像电 脑主机一样放在桌角就不动了,它也许会被放在 -20 度的户外,也许会被阳光晒到 50 度以上,也许会在湿度经常达到 80% 以上的南方夏天使用,也许会在干燥得一碰就能打出静电火花的北方冬天使用,也许会正好放在冰箱的压缩机旁边,也许会从桌上摔到地上再弹起来……
最初没有认识到这点,以为原型搞定了就算完工,结果之后在稳定性上花了大量的时间。不过也算了解了不少东西,特此记录一下~
1. Watchdog
看门狗,一直以来都知道有这么个东西,但是从来没有用过。第一印象是觉得这个模块的作用怎么这么弱智,不就是个定时的复位器吗,还要在程序中不断” 喂狗“,为啥要这么麻烦……现在明白了,因为你不知道你的程序会在什么地方跑飞,或者进入死循环,即便是设计的 100% 完美的代码,也可能在外部干扰、电压不稳的情况下,到错误的地方执行错误的代码,看门狗给让你的程序至少不会失去响应,大多数还有标志位让你能分辨出看门 狗重启从而做特殊处理。
无奈的是看门狗是要消耗电量的,对电池设备不是那么合适,不过如果你的设备不是要求一节纽扣电池就要运行两三年的话,那么还是把看门狗打开吧~
如果追求更低的功耗,和更健壮的稳定性,那么用专用的外部看门狗芯片也是不错的。除此之外也有不少芯片有看门狗这个附加功能,比如 HT1621,不用白不用~ :)
2.BOD
BOD 给我的第一感觉,也跟看门狗一样,不就是个低电压复位器嘛,认为在电压很波动的环境中用用还情有可原,一般情况下用不到。其实不然,因为电压过低是造成程 序混乱的一个主要原因,最低电压 1.8V 的处理器,在 1.0V 电压下也可以运行,但是内部已经混乱了。这次就遇到了用电池的设备在低温下莫名其妙跑飞的情况,最后才发现是电池在电量快耗尽的时候,在低温下电压会降得 很厉害,加上 BOD 就 OK 了。
BOD 也有同样的问题,就是一般也是要耗电的,因为为了比较电压,至少要维护一个电压基准。不过比如 MSP430 就有 zero-power BOD 技术做到零功耗的 BOD,新版采用 picoPower 技术的 AVR 处理器也有 Sleeping BOD 功能,同样可以达到睡眠状态下 BOD 无功耗,所以,也是不用白不用啦~ :D
3.好用的 EPPROM
对于一般功能的设备来说,有 Watchdog 和 BOD 就足够了,但是对于一些要维护状态信息和长期运行的设备,比如数据记录器、监控器,那么程序跑飞,就不能简单的重启了事,更重要的是要恢复现场,接着跑飞前的地方继续运行。
这就需要非易失存储器的帮助了,而 EPPROM 又是其中最好用的一个,100 万次的写入寿命,并且大部分处理器都内置了 EPPROM,又是不用白不用,即便没有,添加一块外置的 EPPROM,比如 24c02,也只需要几毛钱。
虽然 EPPROM 只有几千个字节的存储空间,却足够可以保存运行时的所有变量,配合 Watchdog 的重启中断,可以在处理器被重启前,把重要的运行时参数保存到 EPPROM 里去,重启之后再装载回来。
现在的项目中,把运行时的变量保存在一个 configs 数组中,然后定期把这个数组保存到 EPPROM 中,这样即便掉电重启,也可以快速恢复到最近的一个备份上~
4.插拔和对接
这里主要指运行中设备的插拔,和两个运行中设备的对接,因为在这些情况下会有一些需要注意的问题。
曾经做过一个设备,需要在 3V 和 5V 电源之间无缝切换,当 5V 电源插入的时候,就自动用 5V 电源,5V 拔下就自动用内部的 3V 电池。做好之后却发现一个奇怪的问题,3V 切换到 5V 没有任何问题,当把 5V 拔下来的时候,处理器重启了。一直以为是电源的切换速度不够快,5V 掉电却没有来得及切换到 3V 上去,但是后来发现原因不在这里,原因竟然出在电容上。因为 5V 是外接电源,所以习惯性的在电源入口处放了个大电容(下图 C11),这样当 5V 拔下的时候,这个电容就会瞬间放电,这个瞬时的高压就将处理器复位了,去掉这个大电容,一切正常了~
双系统对接,电压不匹配是主要问题,比如 3V 和 5V 系统之间通过 I2C 总线互联。原来以为,只要 3V 的设备可以耐受 5V 的高压,双方的 VOH 什么的也可以保证逻辑正确的话就可以直接对接了,在实验室里中也经常这样干,但是在产品中用却发现了诸多的问题。比如做 3V 和 5V 设备直接的互联,3V 的设备要插入到 5V 设备上的端口上去,大部分时候插入没有问题,但是少数时候,一插入 3V 的设备就立刻死机了。
原因在于大部分处理器的 IO 口都有钳位二极管的保护(上图中红色框内),让 IO 口的输入电压不会高于 VCC 也不会低于 GND。这也就是为什么3V 和 5V 的系统互联后,即便双方 VCC 没有连接,但是还会发现 3V 系统的 VCC 变成将近 5V 了(其实就是 5V 减一个二极管的压降);这也是为什么有的芯片,不接电压,直接给它的 IO 口输入驱动也能跑起来。因为电流通过 IO 口的钳位二极管流到 VCC 去了。
但是通常钳位二极管有最大电流的限制,3V 与 5V 之间 2V 的电压差,在设备内阻的配合下,会造成将近 10mA 的电流流过钳位二极管,大部分情况下这个电流已经太大了,会造成设备闭锁失去响应,应该控制在 uA 的等级之内才对。
简易的解决办法就是将双方的电压拉近,比如将 5V 的电压用稳压器降到 3.3V,那么和 3V 之间只有 0.3V 的电压差,造成的影响就会减少很多。
除此之外一个效果不错又省事的办法就是加限流电阻(下图中 Rser),这样可以有效的限制住电流大小,因为双方只要 VCC 不互联,那么电压做到严格一致是不可能的,有了限流电阻,就稳妥得多,并且这个电阻还可以有防止双方高频互扰的效果。负面效果就是电阻会拖慢边沿速度,高 速系统中不是很适用,但对于 I2C 这类只有几百 K 的应用,串联个 100 欧左右的电阻,是非常合适的。
更多的不同电压转换技巧,网上可以搜索到一份 Microchip 的 3V 5V 电压转换技巧手册,非常有参考性。
5. Delay and Try
单片机的固件中,经常看到类似的代码:
... enable_adc(); while((!(ADCSRA & (1<<ADIF))); read_adc_data(); ...
中间用 while 来等待标志位置位,即便不用轮询而用中断方式,也会遇到类似的判断,比如在 I2C 传输中判断 I2C 中断标志位是否已经被清除、循环等待 ACK 信号之类的。
这种无限期的等待就有死循环的风险,如果硬件错误使得标志位置位失败,或者是 I2C 设备意外掉电,ACK 信号丢失,处理器就卡死在 while 这里一直等下去了。
虽说有看门狗可以在这种情况下复位,但是更好的方法是 Delay and Try,让程序稍微有点容错性:
unsigned char i = 10; do{ _delay_ms(2); i--; }while((!(ADCSRA & (1<<ADIF))) && (i != 0));
这样,重试 10 次,在足够长的 20ms 内要是还是没有置位,就不再等了,当然后面的程序要有相应的处理机制。
同样的机制,也可以用在桌面软件中。一些特殊的操作,比如检测硬件、从硬件中读取数据、和驱动交互之类的不是每次都能成功,加个 Delay and Try,会稳定不少:
bool succes = false; int retry = 10; do { succes = dwObj.FindDeviceFromID(VendorID, ProductID, ref path); if (succes) break; Thread.Sleep(200); retry -= 1; } while (retry != 0); return succes;
虽然方法很迂腐,但是很有效~ :)
2009年11月22日 04:17
很科普 :)
2019年1月31日 17:47
Thank you for sharing this helpful guide, I really need such information. Thank you for sharing.
2019年6月06日 14:30
status video download visit on our site you download new whatsapp status everyday and share with your lovely friend.
2020年5月29日 10:09
Your article is very useful, the content is great, I have read a lot of articles, but for your article, it left me a deep impression, thank you for sharing.
2021年3月07日 14:37
Yes, I am entirely agreed with this article, and I just want say that this article is very helpful and enlightening. I also have some precious piece of concerned info !!!!!!Thanks. 토토
2021年3月22日 20:43
You have outdone yourself this time. It is probably the best, most short step by step guide that I have ever seen.
2021年3月25日 15:18
Thanks for the blog post buddy! Keep them coming...
2021年3月29日 17:26
Thank you for sharing a bunch of this quality contents, I have bookmarked your blog. Please also explore advice from my site. I will be back for more quality contents.
2021年3月31日 14:44
Thank you so much for such a well-written article. It’s full of insightful information. Your point of view is the best among many without fail.For certain, It is one of the best blogs in my opinion.
2021年3月31日 19:09
I am unable to read articles online very often, but I’m glad I did today. This is very well written and your points are well-expressed. Please, don’t ever stop writing.
2021年4月01日 14:59
Hello I am so delighted I located your blog, I really located you by mistake, while I was watching on google for something else, Anyways I am here now and could just like to say thank for a tremendous post and a all round entertaining website. Please do keep up the great work.
2021年4月01日 18:05
It is an excellent blog, I have ever seen. I found all the material on this blog utmost unique and well written. And, I have decided to visit it again and again.
2021年4月04日 18:45
If you are looking for more information about flat rate locksmith Las Vegas check that right away.
2021年4月05日 14:16
Friend, this web site might be fabolous, i just like it.
2021年4月05日 16:50
I think this is an informative post and it is very useful and knowledgeable. therefore, I would like to thank you for the efforts you have made in writing this article.
2021年4月05日 17:32
I think this is an informative post and it is very useful and knowledgeable. therefore, I would like to thank you for the efforts you have made in writing this article. reklam filmi
2021年4月05日 19:35
You there, this is really good post here. Thanks for taking the time to post such valuable information. Quality content is what always gets the visitors coming. buy fake certificate
2021年4月06日 17:01
I would like to say that this blog really convinced me to do it! Thanks, very good post. office spaces
2021年4月06日 19:25
I appreciated your work very thanks school exercise books
2021年4月06日 21:51
I wish more authors of this type of content would take the time you did to research and write so well. I am very impressed with your vision and insight. Social Media Marketing London
2021年4月07日 16:14
Positive site, where did u come up with the information on this posting? I'm pleased I discovered it though, ill be checking back soon to find out what additional posts you include. spell caster reviews
2021年4月07日 20:29
I’m going to read this. I’ll be sure to come back. thanks for sharing. and also This article gives the light in which we can observe the reality. this is very nice one and gives indepth information. thanks for this nice article... ermeni olayları
2021年4月08日 19:03
All your hard work is much appreciated. Nobody can stop to admire you. Lots of appreciation. bitcoin to visa
2021年4月08日 20:50
It is the kind of information I have been trying to find. Thank you for writing this information. It has proved utmost beneficial for me. 마징가티비
2021年4月10日 16:46
I’ve been surfing online more than 5 hours today, yet I never found any interesting article like yours without a doubt. It’s pretty worth enough for me. Thanks...
2021年4月10日 19:00
An interesting dialogue is price comment. I feel that it is best to write more on this matter, it may not be a taboo topic however usually individuals are not enough to talk on such topics. To the next. Cheers. 해외축구중계
2021年4月11日 15:44
You make so many great points here that I read your article a couple of times. Your views are in accordance with my own for the most part. This is great content for your readers.
2021年4月11日 20:03
Your article is extremely helpful exceptionally fascinating subject i am looking that sort of post thank for imparting to us keep it up. 먹튀검증사이트
2021年4月12日 03:47
Buy Pharmacy grade drugs to boost stamina and enhance performance. Buy HGH, mens sexual health products, weight loss remedy, EPO and Clenbuterol Buy Online. buy androgel online
2021年4月13日 15:47
I have read all the comments and suggestions posted by the visitors for this article are very fine,We will wait for your next article so only.Thanks! buy generic viagra 120 mg in australia
2021年4月13日 20:14
What is an outstanding post! “I’ll be back” (to read more of your content). Thanks for the nudge! 메이저사이트
2021年4月13日 20:27
You make so many great points here that I read your article a couple of times. Your views are in accordance with my own for the most part. This is great content for your readers.
2021年4月13日 21:01
Particular interviews furnish firsthand message on mart size, industry trends, ontogeny trends, capitalist landscape and outlook, etc.
2021年4月14日 02:43
We provide you with Monin products from Syrup, coffee sauce and many other products through the Arzaq app.Free delivery of your first order, download it to your mobile phone, by scanning the QR code in the image with your mobile phone's camera. مونين
2021年4月15日 00:33
Good day! Do you use Twitter? I’d like to follow you if that would be ok. I’m undoubtedly enjoying your blog and look forward to new posts. หี
2021年4月15日 04:12
This is very educational content and written well for a change. It's nice to see that some people still understand how to write a quality post.! buy modafinil online
2021年4月15日 13:52
I admire this article for the well-researched content and excellent wording. I got so involved in this material that I couldn’t stop reading. I am impressed with your work and skill. Thank you so much. 大奉打更人
2021年4月17日 14:19
You have beaten yourself this time, and I appreciate you and hopping for some more informative posts in future. Thank you for sharing great information to us.
2021年4月17日 19:20
Thank you for some other informative blog. Where else could I get that type of information written in such an ideal means? I have a mission that I’m just now working on, and I have been at the look out for such information. avast internet security torrent download
2021年4月18日 02:04
Excellent article. Very interesting to read. I really love to read such a nice article. Thanks! keep rocking. prtg network monitor crack
2021年4月18日 03:09
Thanks for sharing nice information with us. i like your post and all you share with us is uptodate and quite informative, i would like to bookmark the page so i can come here again to read you, as you have done a wonderful job. Coffee Beans
2021年4月19日 15:25
I read that Post and got it fine and informative. Vinduespolering Holstebro
2021年4月20日 01:39
I think this is an informative post and it is very useful and knowledgeable. therefore, I would like to thank you for the efforts you have made in writing this article. rent a car beograd bez depozita
2021年4月20日 14:52
You delivered such an impressive piece to read, giving every subject enlightenment for us to gain information. Thanks for sharing such information with us due to which my several concepts have been cleared.
2021年4月21日 04:08
We have been selling potency drugs continuously since 2008. We are familiar with this industry not only from the side of the trends prevailing on the market, but above all from the biochemical and pharmaceutical side. Kamagra
2021年4月21日 14:00
Your article is extremely helpful exceptionally fascinating subject i am looking that sort of post thank for imparting to us keep it up. vuescan crack mac
2021年4月21日 17:22
Your blog has chock-a-block of useful information. I liked your blog's content as well as its look. In my opinion, this is a perfect blog in all aspects. 메이저사이트
2021年4月21日 17:26
A very awesome blog post. We are really grateful for your blog post. You will find a lot of approaches after visiting your post. 안전놀이터
2021年4月21日 17:47
I haven’t any word to appreciate this post.....Really i am impressed from this post....the person who create this post it was a great human..thanks for shared this with us. 메이저사이트
2021年4月22日 14:14
Thanks For sharing this Superb article.I use this Article to show my assignment in college.it is useful For me Great Work. maya togel club
2021年4月23日 18:45
This article is an appealing wealth of informative data that is interesting and well-written. I commend your hard work on this and thank you for this information. You’ve got what it takes to get attention. 파워볼사이트
2021年4月24日 14:25
Hello, this weekend is good for me, since this time i am reading this enormous informative article here at my home. Innosilicon A11 Pro 8GB 2000Mh
2021年4月24日 18:05
I really loved reading your blog. It was very well authored and easy to understand. Unlike other blogs I have read which are really not that good.Thanks alot! Alice Jones
2021年4月25日 01:56
Thanks for another wonderful post. Where else could anybody get that type of info in such an ideal way of writing? Window Repair Hamilton
2021年4月26日 14:32
I read a article under the same title some time ago, but this articles quality is much, much better. How you do this..
2021年4月26日 17:24
I gotta favorite this website it seems very helpful . Sa gaming
2021年4月26日 18:41
Efficiently written information. It will be profitable to anybody who utilizes it, counting me. Keep up the good work. For certain I will review out more posts day in and day out. floraspring plus reviews
2021年4月26日 21:40
On my website you'll see similar texts, write what you think.
2021年4月27日 02:06
Positive site, where did u come up with the information on this posting?I have read a few of the articles on your website now, and I really like your style. Thanks a million and please keep up the effective work. Kristali
2021年4月27日 16:46
I just found this blog and have high hopes for it to continue. Keep up the great work, its hard to find good ones. I have added to my favorites. Thank You. จีคลับ
2021年4月27日 17:56
I read your blog frequently and I just thought I’d say keep up the amazing work! brick pointing Brooklyn new York
2021年4月28日 01:51
Great post, you have pointed out some excellent points, I as well believe this is a very superb website. 12v battery charger
2021年4月28日 17:53
Someone Sometimes with visits your blog regularly and recommended it in my experience to read as well. The way of writing is excellent and also the content is top-notch. Thanks for that insight you provide the readers! iso program
2021年4月28日 18:21
I got too much interesting stuff on your blog. I guess I am not the only one having all the enjoyment here! Keep up the good work.
2021年4月28日 19:56
Here you will learn what is important, it gives you a link to an interesting web page:
2021年4月29日 01:19
Thank you for some other informative blog. Where else could I get that type of information written in such an ideal means? I have a mission that I’m just now working on, and I have been at the look out for such information. How to get admission in Bachelors degree in Canada
2021年4月29日 15:56
You know your projects stand out of the herd. There is something special about them. It seems to me all of them are really brilliant! Eltoken
2021年4月29日 18:12
Hello, this weekend is good for me, since this time i am reading this enormous informative article here at my home. 먹튀
2021年4月30日 02:22
I exactly got what you mean, thanks for posting. And, I am too much happy to find this website on the world of Google. IIOT Platform
2021年4月30日 02:52
Today, I was just browsing along and came upon your blog. Just wanted to say good blog and this article helped me a lot, due to which I have found exactly I was looking. Industrial Internet of Things
2021年5月01日 14:09
Hello, this weekend is good for me, since this time i am reading this enormous informative article here at my home. Bulk Melter
2021年5月02日 01:44
I think this is an informative post and it is very useful and knowledgeable. therefore, I would like to thank you for the efforts you have made in writing this article. Kinito tilefono Xiaomi 9
2021年5月02日 06:06
If you don"t mind proceed with this extraordinary work and I anticipate a greater amount of your magnificent blog entries. joker123th
2021年5月02日 15:59
Outstanding article! I want people to know just how good this information is in your article. Your views are much like my own concerning this subject. I will visit daily your blog because I know. It may be very beneficial for me. Relx煙彈
2021年5月02日 19:53
i was just browsing along and came upon your blog. just wanted to say good blog and this article really helped me. ufabet
2021年5月03日 13:58
This is my first time i visit here. I found so many interesting stuff in your blog especially its discussion. From the tons of comments on your articles, I guess I am not the only one having all the enjoyment here keep up the good work infrared heating panels
2021年5月03日 15:22
I am constantly surprised by the amount of information accessible on this subject. What you presented was well researched and well written to get your stand on this over to all your readers. Thanks a lot my dear. Best 4K Monitor for Programming
2021年5月03日 16:46
Nice post. I was checking constantly this blog and I am impressed! Extremely helpful information specially the last part I care for such info a lot. I was seeking this particular information for a very long time. Thank you and good luck. <a href="https://meogtwi.net/">메이저사이트</a>
2021年5月05日 18:25
Only aspire to mention ones content can be as incredible. This clarity with your post is superb and that i may think you’re a guru for this issue. High-quality along with your concur permit me to to seize your current give to keep modified by using approaching blog post. Thanks a lot hundreds of along with you should go on the pleasurable get the job done. virtual print fee
2021年5月06日 17:44
Wow, this is fascinating reading. I am glad I found this and got to read it. Great job on this content. I liked it a lot. Thanks for the great and unique info. 4d hari ini malaysia
2021年5月07日 00:13
Interesting and amazing how your post is! It Is Useful and helpful for me That I like it very much, and I am looking forward to Hearing from your next.. voicemod pro license key
2021年5月09日 15:44
Superior post, keep up with this exceptional work. It's nice to know that this topic is being also covered on this web site so cheers for taking the time to discuss this! Thanks again and again! pax pods online
2021年5月09日 18:09
i never know the use of adobe shadow until i saw this post. thank you for this! this is very helpful. schlüsseldienst buchheim
2021年5月10日 17:38
Im no expert, but I believe you just made an excellent point. You certainly fully understand what youre speaking about, and I can truly get behind that. vysor pro crack
2021年5月10日 18:28
Thank you so much as you have been willing to share information with us. We will forever admire all you have done here because you have made my work as easy as ABC. voicemod pro license key free
2021年5月11日 03:24
Your articles are inventive. I am looking forward to reading the plethora of articles that you have linked here. Thumbs up! best iso merchant program
2021年5月11日 17:09
i never know the use of adobe shadow until i saw this post. thank you for this! this is very helpful. 안전놀이터
2021年5月11日 20:24
Nice to read your article! I am looking forward to sharing your adventures and experiences. ganhar curtidas no instagram
2021年5月11日 21:30
That appears to be excellent however i am still not too sure that I like it. At any rate will look far more into it and decide personally! เกมยิงปลา
2021年5月12日 13:49
i never know the use of adobe shadow until i saw this post. thank you for this! this is very helpful. ufabet
2021年5月12日 14:39
Positive site, where did u come up with the information on this posting? I'm pleased I discovered it though, ill be checking back soon to find out what additional posts you include. สล็อตโจ๊กเกอร์
2021年5月13日 01:33
I think this is one of the most significant information for me. And i’m glad reading your article. But should remark on some general things, The web site style is perfect, the articles is really great : D. Good job, cheers katalogos xiaomi
2021年5月13日 11:04
Listed here you'll learn it is important, them offers the link in an helpful webpage:
2021年5月15日 21:44
The most complete guide on white jade meaning, benefits, spiritual connection to the Zodiac, birthstone, numerology, and feng shui Shop White Jade.
2021年5月16日 14:11
We are really grateful for your blog post. You will find a lot of approaches after visiting your post. I was exactly searching for. Thanks for such post and please keep it up. Great work. slot bng
2021年5月16日 15:15
You understand your projects stand out of the crowd. There is something unique about them. It seems to me all of them are brilliant. dmt australia
2021年5月16日 18:07
I am jovial you take pride in what you write. It makes you stand way out from many other writers that can not push high-quality content like you. www.private-blog-network.fr
2021年5月17日 13:50
I admire this article for the well-researched content and excellent wording. I got so involved in this material that I couldn’t stop reading. I am impressed with your work and skill. Thank you so much. buy mushrooms australia
2021年5月17日 16:48
This is a great inspiring article.I am pretty much pleased with your good work.You put really very helpful information. Keep it up. Keep blogging. Looking to reading your next post. 먹튀검증
2021年5月17日 17:00
Wow, What a Excellent post. I really found this to much informatics. It is what i was searching for.I would like to suggest you that please keep sharing such type of info.Thanks 토토사이트
2021年5月18日 16:38
I just found this blog and have high hopes for it to continue. Keep up the great work, its hard to find good ones. I have added to my favorites. Thank You. 토토사이트
2021年5月18日 21:04
You make so many great points here that I read your article a couple of times. Your views are in accordance with my own for the most part. This is great content for your readers. http://www.mamafamille.ca/
2021年5月19日 00:48
I am happy to find this post very useful for me, as it contains lot of information. I always prefer to read the quality content and this thing I found in you post. Thanks for sharing. EYDFA
2021年5月19日 17:25
i never know the use of adobe shadow until i saw this post. thank you for this! this is very helpful. pregnancy symptoms week 4
2021年5月22日 14:20
I was surfing the Internet for information and came across your blog. I am impressed by the information you have on this blog. It shows how well you understand this subject. live22 agent
2021年5月23日 14:09
We are really grateful for your blog post. You will find a lot of approaches after visiting your post. I was exactly searching for. Thanks for such post and please keep it up. Great work. ufabet
2021年5月23日 15:49
I wanted to thank you for this great read!! I definitely enjoying every little bit of it I have you bookmarked to check out new stuff you post. mutual fund
2021年5月23日 20:02
Thank you for this fascinating post, I am happy I observed this website on Google. Not just content, in fact, the whole site is fantastic. Fresh Bros
2021年5月24日 14:29
Thank you again for all the knowledge you distribute,Good post. I was very interested in the article, it's quite inspiring I should admit. I like visiting you site since I always come across interesting articles like this one.Great Job, I greatly appreciate that.Do Keep sharing! Regards, CPE gloves
2021年5月25日 02:48
This is actually the kind of information I have been trying to find. Thank you for writing this information. how to become an iso of Wells Fargo
2021年5月25日 16:52
Nice post! This is a very nice blog that I will definitively come back to more times this year! Thanks for informative post. Delta 8 gummies
2021年5月26日 02:31
Yes, I am entirely agreed with this article, and I just want say that this article is very helpful and enlightening. I also have some precious piece of concerned info !!!!!!Thanks. how to become an iso agent
2021年5月26日 14:34
I visit your blog regularly and recommend it to all of those who wanted to enhance their knowledge with ease. The style of writing is excellent and also the content is top-notch. Thanks for that shrewdness you provide the readers! ufabet168
2021年5月27日 17:42
Positive site, where did u come up with the information on this posting?I have read a few of the articles on your website now, and I really like your style. Thanks a million and please keep up the effective work. ingilizce kursu ankara
2021年5月28日 01:57
I would like to say that this blog really convinced me to do it! Thanks, very good post. 온라인카지노
2021年5月28日 20:41
Have you always wanted to buy a decent lamp for the living room? Or finally illuminate the kitchen properly? diy lampe Then a warm welcome to Lightstock - the online shop for decorative lighting away from hardware stores & amp; Mainstream. Regardless of whether you want to build the perfect lamp yourself - or use lights made by us.
2021年5月29日 19:00
It is a fantastic post – immense clear and easy to understand. I am also holding out for the sharks too that made me laugh. บาคาร่า
2021年5月29日 22:04
I know your expertise on this. I must say we should have an online discussion on this. Writing only comments will close the discussion straight away! And will restrict the benefits from this information. Boutique Locale
2021年6月01日 03:52
Wonderful article. Fascinating to read. I love to read such an excellent article. Thanks! It has made my task more and extra easy. Keep rocking. Invest bitcoin to make money
2021年6月01日 19:09
Thank you a bunch for sharing this with all of us you actually realize what you are talking about! Bookmarked. Please also seek advice from my site =). We could have a hyperlink change contract between us! Buy Tyres Online Reading
2021年6月01日 21:06
Best work you have done, this online website is cool with great facts and looks. I have stopped at this blog after viewing the excellent content. I will be back for more qualitative work. ดูหนังออนไลน์ 037
2021年6月02日 14:40
We are really grateful for your blog post. You will find a lot of approaches after visiting your post. I was exactly searching for. Thanks for such post and please keep it up. Great work. Densipaper
2021年6月02日 19:49
You delivered such an impressive piece to read, giving every subject enlightenment for us to gain information. Thanks for sharing such information with us due to which my several concepts have been cleared. http://sugarguide.org/
2021年6月06日 21:53
I found this is an informative and interesting post so i think so it is very useful and knowledgeable. I would like to thank you for the efforts you have made in writing this article. anime sugoi
2021年6月08日 19:56
Ace Clothing Alterations Gold Coast Robina. Service Gold Coast Wide and Australia Wide though our Online Shop. We are here to help you with your clothing alterations and repairs. Common jobs include, Pant hem, Suit Alterations, Dress Alterations, Wedding Dress Alterations, Zipper Repairs and much more. <a href="https://ace-alterations.com/">Clothing Alterations</a>
2021年6月09日 21:16
Superior post, keep up with this exceptional work. It's nice to know that this topic is being also covered on this web site so cheers for taking the time to discuss this! Thanks again and again! Boutique cadeau
2021年6月15日 01:54
I visit your blog regularly and recommend it to all of those who wanted to enhance their knowledge with ease. The style of writing is excellent and also the content is top-notch. Thanks for that shrewdness you provide the readers! ccsp certification
2021年6月16日 00:36
Thanks for sharing this quality information with us. I really enjoyed reading. Will surely going to share this URL with my friends. wedding photography Asian
2021年6月17日 15:36
Im no expert, but I believe you just made an excellent point. You certainly fully understand what youre speaking about, and I can truly get behind that. my aol mail login
2021年6月18日 02:01
Awesome article, it was exceptionally helpful! I simply began in this and I'm becoming more acquainted with it better! Cheers, keep doing awesome! health news
2021年6月19日 23:05
Great article Lot's of information to Read...Great Man Keep Posting and update to People..Thanks Career updates
2021年6月20日 17:01
I wanted to thank you for this excellent read!! I definitely loved every little bit of it. I have you bookmarked your site to check out the new stuff you post. <a href="https://SEXYGAME66VIP.com">sexygame 66</a>
2021年6月21日 20:16
Pretty good post. I have just stumbled upon your blog and enjoyed reading your blog posts very much. I am looking for new posts to get more precious info. Big thanks for the useful info. space brownies
2021年6月21日 20:28
It’s appropriate time to make some plans for the future and it is time to be happy. I have read this post and if I could I wish to suggest you few interesting things or advice. Perhaps you could write next articles referring to this article. I desire to read even more things about it! เว็บพนันบอลออนไลน์
2021年6月22日 14:31
Excellent to be visiting your blog again, it has been months for me. Rightly, this article that I've been served for therefore long. I want this article to finish my assignment within the faculty, and it has the same topic together with your article. Thanks for the ton of valuable help, nice share. buy google voice accounts
2021年6月23日 16:15
Pretty good post. I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I'll be subscribing to your feed and I hope you post again soon. Big thanks for the useful info. Tarpaulin sheet
2021年6月24日 01:07
That's look into you ought to special groundwork ahead of when authoring. Shall be likely that will even more alluring blog post through this industry. Construction loans
2021年6月25日 19:35
A very awesome blog post. We are really grateful for your blog post. You will find a lot of approaches after visiting your post. Tin Tức Cá Cược Liên Quan Đến 188Bet
2021年6月26日 17:02
Excellent website! I adore how it is easy on my eyes it is. I am questioning how I might be notified whenever a new post has been made. Looking for more new updates. Have a great day!
2021年6月27日 19:54
Your blog has piqued a lot of real interest. I can see why since you have done such a good job of making it interesting. I appreciate your efforts very much. best waist trainer
2021年6月27日 19:55
Thank you for another great article. Where else could anyone get that kind of information in such a perfect way of writing? I have a presentation next week, and I am on the look for such information. โลโก้ฮวงจุ้ย
2021年6月28日 14:37
Wonderful article. Fascinating to read. I love to read such an excellent article. Thanks! It has made my task more and extra easy. Keep rocking.
2021年6月28日 16:04
Pretty good post. I have just stumbled upon your blog and enjoyed reading your blog posts very much. I am looking for new posts to get more precious info. Big thanks for the useful info. vvs carts
2021年6月29日 01:45
Wow, excellent post. I'd like to draft like this too - taking time and real hard work to make a great article. This post has encouraged me to write some posts that I am going to write soon. voyance telephone
2021年6月29日 14:37
The article looks magnificent, but it would be beneficial if you can share more about the suchlike subjects in the future. Keep posting. marijuana concentrates
2021年6月30日 14:22
Thanks for the blog filled with so many information. Stopping by your blog helped me to get what I was looking for. Now my task has become as easy as ABC. cbd isolate
2021年6月30日 22:23
Everything has its value. Thanks for sharing this informative information with us. GOOD works! Best California Based Services at A1FastMoving.com
2021年7月04日 18:08
I visit your blog regularly and recommend it to all of those who wanted to enhance their knowledge with ease. The style of writing is excellent and also the content is top-notch. Thanks for that shrewdness you provide the readers! joker888
2021年7月04日 18:23
All your hard work is much appreciated. Nobody can stop to admire you. Lots of appreciation. @barvosvilla
2021年7月05日 19:25
Pretty nice post. I just stumbled upon your weblog and wanted to say that I have really enjoyed browsing your blog posts. After all I’ll be subscribing to your feed and I hope you write again soon! buy cartridges online
2021年7月05日 20:03
It is actually in a similar fashion an awesome write-up i always most certainly savored investigating. It's not at all really day-to-day i always cultivate the method to seek out a single thing. cektoto.net
2021年7月06日 03:01
Outstanding article! I want people to know just how good this information is in your article. Your views are much like my own concerning this subject. I will visit daily your blog because I know. It may be very beneficial for me. Refrigerated transportation for perishable goods
2021年7月06日 16:35
What a fantabulous post this has been. Never seen this kind of useful post. I am grateful to you and expect more number of posts like these. Thank you very much. ejen takaful
2021年7月06日 17:57
This is such a great resource that you are providing and you give it away for free. I love seeing blog that understand the value of providing a quality resource for free. <a href="https://goldincity.com">먹튀검증</a>
2021年7月07日 14:27
Hey, this day is too much good for me, since this time I am reading this enormous informative article here at my home. Thanks a lot for massive hard work. wholesale thc concentrates
2021年7月07日 19:44
So it is interesting and very good written and see what they think about other people. Where to Buy Xanax Online
2021年7月08日 14:17
It is my first visit to your blog, and I am very impressed with the articles that you serve. Give adequate knowledge for me. Thank you for sharing useful material. I will be back for the more great post. where to buy thc
2021年7月08日 14:50
In the world of www, there are countless blogs. But believe me, this blog has all the perfection that makes it unique in all. I will be back again and again. How to get Lean Six Sigma Certification in India?
2021年7月08日 16:35
I know this is one of the most meaningful information for me. And I'm animated reading your article. But should remark on some general things, the website style is perfect; the articles are great. Thanks for the ton of tangible and attainable help. thc concentrates europe
2021年7月10日 16:29
Thank you for taking the time to publish this information very useful! Best Smm panel
2021年7月10日 18:06
This is my first visit to your web journal! We are a group of volunteers and new activities in the same specialty. Website gave us helpful data to work. สล็อต
2021年7月10日 18:20
i never know the use of adobe shadow until i saw this post. thank you for this! this is very helpful. คาสิโนออนไลน์
2021年7月11日 19:34
I admire this article for the well-researched content and excellent wording. I got so involved in this material that I couldn’t stop reading. I am impressed with your work and skill. Thank you so much. serie-master.com
2021年7月11日 20:25
Thank you for taking the time to publish this information very useful! Ibloom Squishies
2021年7月12日 15:33
You have beaten yourself this time, and I appreciate you and hopping for some more informative posts in future. Thank you for sharing great information to us. Here
2021年7月13日 16:27
New web site is looking good. Thanks for the great effort. live tv streaming
2021年7月13日 19:27
Your blog is too much amazing. I have found with ease what I was looking. Moreover, the content quality is awesome. Thanks for the nudge! 먹튀검증사이트
2021年7月14日 20:03
Your content is nothing short of bright in many forms. I think this is friendly and eye-opening material. I have gotten so many ideas from your blog. Thank you so much. The Leather Craftsmen Men’s Jackets
2021年7月15日 16:28
The content is utmost interesting! I have completely enjoyed reading your points and have come to the conclusion that you are right about many of them. You are great, and your efforts are outstanding! electric scooter
2021年7月16日 22:56
I have read all the comments and suggestions posted by the visitors for this article are very fine,We will wait for your next article so only.Thanks! Pharmacy tech classes,
2021年7月17日 00:06
hoffman carpet cleaning This is my first time visit to your blog and I am very interested in the articles that you serve. Provide enough knowledge for me. Thank you for sharing useful and don't forget, keep sharing useful info:
2021年7月17日 15:19
I’m going to read this. I’ll be sure to come back. thanks for sharing. and also This article gives the light in which we can observe the reality. this is very nice one and gives indepth information. thanks for this nice article... 파워볼총판
2021年7月17日 21:21
The article looks magnificent, but it would be beneficial if you can share more about the suchlike subjects in the future. Keep posting. Kickoffbet
2021年7月17日 21:31
This particular papers fabulous, and My spouse and i enjoy each of the perform that you have placed into this. I’m sure that you will be making a really useful place. I has been additionally pleased. Good perform! 먹튀검증소
2021年7月18日 17:37
Wonderful article. Fascinating to read. I love to read such an excellent article. Thanks! It has made my task more and extra easy. Keep rocking. ibloom squishies
2021年7月19日 13:01
Genuinely, this article is extremely one of the absolute best ever. I am an antique 'Article' gatherer and I at times read some new articles in the event that I discover them intriguing. What's more, I discovered this one entirely captivating and it ought to go into my gathering. Good work! Buy Online Bank account
2021年7月20日 03:47
Slots sites are the most popular search online, that is why we try to collect the Best Slots Sites here as a list for convenience over time. Best Slots Sites
2021年7月20日 19:31
I’m going to read this. I’ll be sure to come back. thanks for sharing. and also This article gives the light in which we can observe the reality. this is very nice one and gives indepth information. thanks for this nice article... visto canadense
2021年7月20日 21:32
I feel extremely cheerful to have seen your site page and anticipate such a large number of all the more engaging circumstances perusing here. Much appreciated yet again for every one of the points of interest. Buy Facebook Business Manager
2021年7月22日 18:18
I am overpowered by your post with such a decent theme. Typically I visit your web journals and get refreshed through the data you incorporate yet the present blog would be the most obvious. Well done! voyance gratuite par téléphone numéro non surtaxé sans cb
2021年7月24日 15:42
I’m going to read this. I’ll be sure to come back. thanks for sharing. and also This article gives the light in which we can observe the reality. this is very nice one and gives indepth information. thanks for this nice article... Mapleaf Customize
2021年7月25日 14:35
Wow, What an Outstanding post. I found this too much informatics. It is what I was seeking for. I would like to recommend you that please keep sharing such type of info.If possible, Thanks. order weed online
2021年7月25日 19:03
Thanks for an interesting blog. What else may I get that sort of info written in such a perfect approach? I have an undertaking that I am just now operating on, and I have been on the lookout for such info. hospital surgical tech programs
2021年7月28日 00:53
Took me time to read all the comments, but I really enjoyed the article. It proved to be Very helpful to me and I am sure to all the commenters here! It’s always nice when you can not only be informed, but also entertained! Search Engines
2021年7月29日 14:07
Hello, this weekend is good for me, since this time i am reading this enormous informative article here at my home. hard money lenders
2021年7月30日 14:21
Thanks, that was a really cool read! lifeguard certification
2021年7月31日 15:51
Positive site, where did u come up with the information on this posting?I have read a few of the articles on your website now, and I really like your style. Thanks a million and please keep up the effective work. uk wordpress hosting
2021年8月04日 23:23
This is very educational content and written well for a change. It's nice to see that some people still understand how to write a quality post.! www.furrytailsvet.com.sg
2021年8月05日 11:01
A very excellent blog post. I am thankful for your blog post. I have found a lot of approaches after visiting your post. voyance
2021年8月05日 19:18
All your hard work is much appreciated. Nobody can stop to admire you. Lots of appreciation. cherry lime haze
2021年8月07日 01:56
This article is an appealing wealth of informative data that is interesting and well-written. I commend your hard work on this and thank you for this information. You’ve got what it takes to get attention. 토토사이트
2021年8月07日 17:00
If more people that write articles involved themselves with writing great content like you, more readers would be interested in their writings. I have learned too many things from your article. Jeep Wrangler
2021年8月10日 19:23
Thank you very much for this useful article. I like it. buy gmail usa
2021年8月15日 14:14
Hello I am so delighted I located your blog, I really located you by mistake, while I was watching on google for something else, Anyways I am here now and could just like to say thank for a tremendous post and a all round entertaining website. Please do keep up the great work. buy gmail usa
2021年8月17日 18:18
I think this is an informative post and it is very useful and knowledgeable. therefore, I would like to thank you for the efforts you have made in writing this article. บาคาร่าออนไลน์
2021年8月20日 21:34 The appearance positively wonderful. All of these miniature info are fashioned utilizing massive amount historical past experience. I want it all significantly คาสิโนสด บาคาร่า
2021年8月24日 14:37
Superbly written article, if only all bloggers offered the same content as you, the internet would be a far better place.. CyberFlix Tv
2021年8月25日 15:41
Your blog has piqued a lot of real interest. I can see why since you have done such a good job of making it interesting. I appreciate your efforts very much. buy youtube views
2021年8月26日 18:59
I wanted to thank you for this great read!! I definitely enjoying every little bit of it I have you bookmarked to check out new stuff you post. sloty
2021年8月30日 21:25
I admire this article for the well-researched content and excellent wording. I got so involved in this material that I couldn’t stop reading. I am impressed with your work and skill. Thank you so much. www.adguysco.com
2021年8月31日 13:26
I can set up my new idea from this post. It gives in depth information. Thanks for this valuable information for all,.. 먹튀검증사이트
2021年8月31日 18:13
Excellent article. Very interesting to read. I really love to read such a nice article. Thanks! keep rocking. 먹튀검증
2021年9月01日 15:29
An fascinating discussion is value comment. I think that it is best to write extra on this matter, it won’t be a taboo topic however generally people are not enough to talk on such topics. To the next. Cheers Thoptv Apk
2021年9月03日 12:59
Hello there to everyone, here everybody is sharing such learning, so it's critical to see this website, and I used to visit this blog day by day 파워볼총판
2021年9月04日 17:33
You delivered such an impressive piece to read, giving every subject enlightenment for us to gain information. Thanks for sharing such information with us due to which my several concepts have been cleared. :piano teacher sg
2021年9月04日 18:07
There are lots of dissertation internet websites on-line since you attain web famous from the site.Lifeguard Certificate
2021年9月09日 16:02
Took me time to read all the comments, but I really enjoyed the article. It proved to be Very helpful to me and I am sure to all the commenters here! It’s always nice when you can not only be informed, but also entertained! nebraska state penitentiary news
2021年9月09日 22:23
What is an outstanding post! “I’ll be back” (to read more of your content). Thanks for the nudge! What is Branded Entertainment
2021年9月10日 17:47
Nice post! This is a very nice blog that I will definitively come back to more times this year! Thanks for informative post. cannaclear carts
2021年9月12日 01:05
Pretty good post. I have just stumbled upon your blog and enjoyed reading your blog posts very much. I am looking for new posts to get more precious info. Big thanks for the useful info. 美国代写被抓
2021年9月12日 13:32
Hi there! Nice stuff, do keep me posted when you post again something like this! 美国代写被抓
2021年9月12日 19:15
Thanks for taking the time to discuss this, I feel strongly about it and love learning more on this topic. SItus Slot Gacor Hari ini
2021年9月13日 15:40
Thanks for sharing nice information with us. i like your post and all you share with us is uptodate and quite informative, i would like to bookmark the page so i can come here again to read you, as you have done a wonderful job<a href="https://softkeybox.com/netdrive-crack/">NetDriver License Key</a>
2021年9月14日 02:20
I really thank you for the valuable info on this great subject and look forward to more great posts. Thanks a lot for enjoying this beauty article with me. I am appreciating it very much! Looking forward to another great article. Good luck to the author! All the best! ki residences showroom
2021年9月20日 22:24
Hey There. I found your blog using msn. This is a very well written article. I’ll be sure to bookmark it and come back to read more of your useful info. Thanks for the post. I’ll definitely return. Skip The Dishes promo code
2021年9月22日 15:53
Thank you for helping people get the information they need. Great stuff as usual. Keep up the great work!!! https://muabannhadat.tv/bat-dong-san/tuyen-quang
2021年9月23日 18:40
Positive site, where did u come up with the information on this posting? I'm pleased I discovered it though, ill be checking back soon to find out what additional posts you include. maltipoo puppies price
2021年9月23日 23:23
Your work is truly appreciated round the clock and the globe. It is incredibly a comprehensive and helpful blog. buy palm seeds
2021年9月24日 20:02
PUBG Redeem Code Today: Perhaps you are looking PUBG mobile redeem code for 2021. But facing the same issue as others as PUBG Lite redeem codes today are either invalid or expired. Am I right, friends? If so, then you have come to the right and legitimate website. Most of all, you will get only the working redeem code for PUBG. Of course, we update this page on a daily basis. By the way, PUBG is an online Battle Royal gaming system. It has made significant popularity and identification all over the world among children.
2021年9月25日 19:00
I am incapable of reading articles online very often, but I’m happy I did today. It is very well written, and your points are well-expressed. I request you warmly, please, don’t ever stop writing. pit puppies for sale
2021年10月13日 15:11
<ahref="https://lodhisport.com/Product/ProductList1?Catid=3">Cricket Bat Ball store in NCR</a>
2021年10月13日 15:11
Cricket Bat Ball store in NCR
2021年10月13日 15:12
Cricket Bat Ball store in NCR
2021年10月13日 15:13
https://lodhisport.com/Product/ProductList1?Catid=3
2021年10月13日 15:14
<a href="https://lodhisport.com/Product/ProductList1?Catid=3">Cricket Bat Ball store in NCR</a>
2021年10月13日 15:15
Cricket Bat Ball store in NCR
2021年10月21日 17:35
Our new PolarFire FPGAs and FPGA SoCs reduce our customers' system costs while helping them solve thermal challenges without sacrificing bandwidth," said Bruce Weyer, vice president of Microchip's FPGA business unit. The award-winning PolarFire FPGA platform offers the industry's best combination of power and performance. [url=https://www.fpgakey.com/xilinx-parts/xc7z020-1clg400c]XC7Z020-1CLG400C[/url]
2021年10月21日 17:37
Now we've introduced a lower density product that cuts power consumption by more than half, while maintaining best-in-class functionality. No other product in its category can match this.<a href="https://www.fpgakey.com/xilinx-parts/xcf04svog20c">xcf04svog20c</a>
2021年11月01日 03:11
메이저사이트 메이저놀이터에서는 스포츠 종목으로 축구,야구,농구에 대한 배팅이 가능하면서 먹튀가 존재하지 않는 사이트를 일컫는 명칭입니다.
2021年11月02日 16:27
Mobile App Development Company in Dubai Dubai is a place where entrepreneurship and tech business models are developing at a very fast rate.
2021年11月02日 21:34
Branded SMS Cheapest and high quality Branded SMS Reseller. Big Profit, No expiry, no big purchase deal.
2021年11月07日 22:10
Very interesting blog. Alot of blogs I see these days don't really provide anything that I'm interested in, but I'm most definately interested in this one. Just thought that I would post and let you know.
2021年11月09日 18:35
Two full thumbs up for this magneficent article of yours. I've truly delighted in perusing this article today and I figure this may be outstanding amongst other article that I've perused yet. If it's not too much trouble keep this work going ahead in a similar quality. Bandicam Crackeado
2021年11月15日 23:48
rscit questions in hindi Join only one group, as the same data will be forwarded to all groups.
2021年12月04日 23:27
This is a smart blog. I mean it. You have so much knowledge about this issue, and so much passion. You also know how to make people rally behind it, obviously from the responses.
2021年12月07日 01:42 This is my first time i visit here. I found so many interesting stuff in your blog especially its discussion. From the tons of comments on your articles, I guess I am not the only one having all the enjoyment here keep up the good work www.meridiannorstar.net
2021年12月09日 22:33
Excellent .. Amazing .. I’ll bookmark your blog and take the feeds also…I’m happy to find so many useful info here in the post, we need work out more techniques in this regard, thanks for sharing.
2022年12月12日 16:54
2023年3月26日 09:29
Daemon Tools Pro is a popular software application that allows you to create virtual drives and mount disc images. It offers a range of features, including support for a variety of image formats, advanced imaging features, and a user-friendly interface. In this article, we will review the key features of Daemon Tools Pro and how to use it to create and manage virtual drives.
https://crackedspace.org/daemon-tools-pro-crack-free-download/