完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
`` 简 介: 宋雪松老师,论坛用户名@Kinst。著有《手把手教你学51单片机(C语言版)》。擅长扩频通信、OFDM通信技术、测量仪器相关技术,曾从事过5年的通信算法研究,现在创业中,他的团队开发除了具有独立知识产权的LA5016,LA2016逻辑分析仪。酷爱技术,喜欢追求卓越。
你有问题吗???
活动获奖规则: 为了鼓励踊跃提问,宋雪松老师会在问答结束后从提问者中选取 2 名幸运会员赠予《手把手教你学51单片机(C语言版)》一书。 Elecfans高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。 社区高手招募 ************************************************************************** Elecfans高手问答往期回顾:`` 本帖被以下淘专辑推荐:
|
|
相关推荐
36个回答
|
|
很高兴离宋老师这么近,宋老师的视频我也在学习。
我先请教一个问题吧,很多单片机都自带有看门狗。有的单片机都默认开启看门狗,但是为什么有的时候必须要把看门狗关闭才能正常实现功能呢?比如我曾经用过silicon lab的C8051F写过一个小程序,不关闭看门狗的时候连内部时钟输出结果都不对,关闭看门狗就正常了。而且看官方例程,一般首先上来就把看门狗关掉。 能简要介绍下看门狗使用方法吗?什么时候使用?如何用? 谢谢! |
|
|
|
|
|
|
|
|
|
|
|
宋老师一直有关注你,也是看着你的视频一路学过来的,最近碰到一个问题:我用SP200SE编程器和配套WLPRO V2.20软件烧写24C01芯片.烧后的数据和原数据的数据位置不同.不知何故?@kinst 求教了
|
|
|
|
mplab +picc18 编译时 uchar x[]="字符串"; 这样的地方总是出现 illegal character的错误 只要有汉字 的字符串就会报错 希望宋老师@kinst 能帮我解决一下 小弟 不胜感激
|
|
|
|
|
|
|
|
你这是还没明白看门狗是干嘛用的。看门狗,从他的名字来看,首先作用是看门的,其次是一条狗。 我从以下几个方面说明一下这个问题。 1、为什么用看门狗:我们程序在flash中运行的时候,有时候遇到强干扰或者一些很特殊的情况,本来应该运行第100行的程序,突然跑到了500行的代码中运行了,跑乱了,而500行要么是错误代码,要么是我们没有写程序的位置。也就是说,不管如何,现在程序运行错乱,不正常,而且将会一直不正常下去,这个情况我们通常称之为跑飞。这个时候,我们希望单片机有一个机制,就是负责看着程序这个大门,一旦程序错乱,立马应对处理。 2、如何看门:我们学单片机,其实都学过定时器这个模块,其实看门狗就是一个定时器而已。我就拿最简单的标准51单片机的T0来说吧,比如定义成模式1的时候,用11.0592M晶振,那么从0加到溢出,一共时间大概是70多ms,我就暂定为70ms吧。我们打开看门狗定时器这个模块后,这个模块是独立于我们的CPU程序之外的一个模块,只要打开了,他就不会受到程序的控制。那么我们程序就运行,运行,突然跑飞了,程序运行不正常了,并且会一直不正常下去。但是由于我们打开了看门狗,这个定时器会一直运行,当运行到70ms的时候,发生溢出,这个时候看门狗会直接把我们的单片机给复位,让程序重新运行,避免跑飞。 3、如何喂狗:由于我们设定了一个70ms的定时,那么及时我们程序正常运行的话,到了70ms,也会自动复位,这是我们不希望的,所以我们要经常性的重新给这个定时器初值重新赋值,比如TH0 = 0,TL0 = 0.经常这样写就可以避免定时器溢出了,既然定时器不溢出了,单片机也就不会复位了。 4、多久喂狗:这个就需要根据我们的程序经验了,比如我们知道我们的程序运行系统,从最开始运行到某一个位置,循环一次最大是10ms,那么循环5次最大也不会超过50ms,我们就50ms给把定时器清零一次,所以只要我们50ms喂一次狗,那么我们的程序永远不会由于看门狗超时而复位。而一旦受到干扰了,我们的喂狗程序就不会起到任何作用,所以这个时候我们就可以通过看门狗的自动复位,来让我们的错乱的系统恢复正常。 不知道我说这么多你能不能看懂。单片机设置看门狗的主要作用就是防止程序跑飞,如果你的系统很简单,要求不高,那就上来关闭看门狗就可以了,用不到。如果你的系统比较复杂,干扰较强,那么就需要通过这种方式,打开看门狗,定时喂狗。一旦程序跑飞,看门狗可以自动复位,让系统重新正常运行,不会处于无限的死机状态。 |
|
|
|
做上位机选什么牌子是啥意思,没明白你的意思。你是说选电机,还是选单片机,最好先研究一下同类其他产品,别人是如何做的,多找几个,对比优劣后根据实际情况选择。它山之石可以攻玉。 |
|
|
|
你这个问题没法确定问题所在,解决思路就是用示波器或者逻辑分析仪测量一下那个波形,根据波形进行判断。 |
|
|
|
可以看我教程的第十课,关于PWM,那节课,你只要调整占空比,就可以调整电压了。 |
|
|
|
这个编译器不识别中文字符。 |
|
|
|
|
|
|
|
@kinst D1302芯片的数据手册中,关于突发模式的介绍并不是很详细,以至于我看数据手册时都没搞明白突发模式到底怎么用。想必接触过1302的烧友们都有过那种感觉吧。
为了方便各位朋友讨论学习,我将我对突发模式的理解总结如下: (1)数据手册明确指出了在写保护的情况下,突发模式是无法写入数据的。而不论是读还是写都得发送命令字,所以说必须先将写保护关掉!! (2)关掉写保护后,写入“突发模式”到寄存器中(即发送突发模式命令字)。命令字的格式与其他命令字一样,只是A4~A0为全1,其它位含义不变。 (3)在普通模式下,写入读的命令字便可以进行读取一个字节了,而突发模式时能一直读取数据,但必须保持RST(中文资料的引脚一般为CE)为高,产生相应的时钟即可依次获得各个数据。注意突发模式写入时钟时:必须写满8个寄存器!!!!!! 以上是个人见解,如有不足敬请宋老师指正。 |
|
|
|
我都看懂了,这么通熟易懂,现实中要是遇上你这么强的高手就好了 |
|
|
|
想学,不知从何下手。
|
|
|
|
现在天天逛论坛
|
|
|
|
|
|
|
|
感谢宋老师的耐心回复,大概明白了。我再仔细研读下你的讲解和datasheet来体会下,非常感谢。 |
|
|
|
学习了,好东西~
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
515 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
515 浏览 0 评论
780 浏览 0 评论
如何用OpenCV的相机捕捉视频进行人脸检测--基于米尔NXP i.MX93开发板
1360 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十章 YOLO2人手检测实验
572 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11755 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 16:32 , Processed in 0.983897 second(s), Total 76, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号