avr单片机的PC5脚我想输出一个低电平,为什么烧了很多次都输出高电平?是不是我的设置有问题?

 我来答
晓非飝
2012-05-09 · 专注模数电单片机技术
晓非飝
采纳数:279 获赞数:1131

向TA提问 私信TA
展开全部
那要看是什么型号的单片机了,如果是ATmega16或32,PC5正好是ISP接口的TDI,如果熔丝位设定中,允许ISP编程的话,PC5是无效的,不能被使用。
不过,芯片还留了一手,在JTAGEN熔丝位打开的情况下,通过软件可以控制JTAG,可以禁止和允许,操作也很简单,下面是具体方法:
MCUCSR |= 1 << JTD; /*禁止JTAG接口*/
MCUCSR |= 1 << JTD; /*因为JTAG接口事关重大,所以需要连续两次操作才能被有效执行*/

MCUCSR &= ~(1 << JTD); /*允许JTAG接口*/
MCUCSR &= ~(1 << JTD);
追问
啊,就是MEGA16,我用的是一个专门的HEX烧写软件,里面有设置熔丝位的,但是JTAG设置成0和1都不行,求指教,用上面的指令能有用嘛?在前面加上这个就能释放PC5口?
追答
上面的代码是ICCAVR编译器下的代码,如果是别的编译器,需要找到对应的寄存器名称编写代码。代码是实测的,可以在不关闭JTAG接口的情况下,通过代码使运行时的JTAG功能失效,释放PC5口。
AnyWay中国
2012-05-09 · TA获得超过5.8万个赞
知道大有可为答主
回答量:9497
采纳率:92%
帮助的人:4756万
展开全部
首先,你要确保程序已经正常运行。AVR只需正确的时钟(内部RC或外部晶振)配置和正常的供电电源,即可正常工作。
其次,程序的基本框架是否正确,可下载一个完整的、简单的程序修改一下。
第三,正确设置DDR和PORT寄存器。
上述三步正确,还不正确的话,可能是单片机坏了。
如果有仿真器的话,可针对DDR和PORT寄存器操作的几条指令单步调试一下。
追问
单片机其他引脚设置都可以,就是PC的引脚烧进去置低电平不行?程序就对PC5这个引脚的操作有问题
追答
你是什么型号的单片机,某些型号的某些IO口是用于特殊功能,比如说JTAG接口或ISP接口的部分引脚会有这个问题,可以通过设置熔丝位禁止该功能。为了避免错误操作,建议回避!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友60c5cfd
2012-05-08 · 超过10用户采纳过TA的回答
知道答主
回答量:28
采纳率:0%
帮助的人:18万
展开全部
检查程序DDRC有没有问题
追问
DDRC设置成1,PORTC设置成0了
追答
试试加个循环,有可能输出低电平后很快又输出高电平,用软件仿真下看看。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式