怎么用一个51单片机实现这两个信号输出
发布网友
发布时间:2023-09-18 07:37
我来回答
共4个回答
热心网友
时间:2024-01-27 17:44
一般就开个定时器,然后计算好时间根据12M到32K,定义两个引脚为输出模式,定时器时间一到就输出一个信号:对与一信号,定义个数组,一个一个输出循环。第二个就1,0,1,0输出既可。
关键在于定时器的时间是否精确。
热心网友
时间:2024-01-27 17:45
方波好说
定期器中断输出也可以
用语句延时也可以
归零码就麻烦点 14位
弄一个计数器一样的 寄存器
比如R1
每次输出先自加1 输出一个第一位1
中间判断
到第7,8,9,10,13,14位 就输出0
其他输出1
14为完了 就R1清零
不知道编码的规则呀
1 就是 H
0 就是 L?
还是 先1 再 0 是1
先0 再 1 是0
热心网友
时间:2024-01-27 17:45
对于什么是非归零码不太清楚,但是方波倒是可以搞定
我们用定时器T0,并从P1.0输出方波
首先计算晶振频率,你所要得到的方波频率为32KHz,那么周期为3.125*10^-5,一次跳变即半个周期时间为15.625μs,我们设定定时器需要15次计数,则晶振频率算得11.52MHz.
T0初值=256-15=F1H
程序如下:
MOV TMOD,#02H
MOV TL0,#0F1H
MOV TH0,#0F1H
CLR P1.0
SETB TR0
REP1:JBC TF0,JUMP
SJMP REP1
JUMP:CPL P1.0
REP2:JBC TF0,JUMP
SJMP REP2
热心网友
时间:2024-01-27 17:46
你的晶振频率是多少