亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標題:
如何使用單片機模擬一下下降沿?
[打印本頁]
作者:
chinayanhui
時間:
2020-3-7 18:21
標題:
如何使用單片機模擬一下下降沿?
正在學習STC12C2052AD單片機中的PCA。
根據芯片說明書中的示例程序:《使用PCA功能擴展外部中斷的示例程序》
代碼如下:
#include <STC12C2052AD.H>
#include <INTRINS.H>
#include "UART.H"
sbit LED = P1 ^ 7;
sbit EPCAI = IE ^ 6;
volatile uint8 COMMAND;
// PCA中斷
void PcaIsr() interrupt 6
{
Prints("觸發中斷。\r\n");
CCF0 = 0;
LED = !LED;
}
void main()
{
InitUART(); // 初始化串口
CCON = 0; // 初始化PCA
CL = 0;
CH = 0;
CMOD = 0; // 設置PCA的脈沖為系統時鐘,并禁止PCA中斷
CCAPM0 = 0x11; // 允許下降沿捕獲,并使能寄存器CCON的比較捕獲標志CCF0,用來產生中斷
CR = 1;
EPCAI = 1;
EA = 1;
while(1)
{
if(COMMAND >= 0x02)
{
P16 = 0;
COMMAND = 0;
}
if(COMMAND == 0x01)
{
P16 = 1;
_nop_();
_nop_();
_nop_();
_nop_();
P16 = 0;
COMMAND = 0;
}
}
}
復制代碼
我將P16和P37使用導線連接,P17和LED連接,使用P16模擬一個下降沿,但是LED沒有反應。有誰用過12C2052AD的PCA的,麻煩幫我看一下,這個下降沿有問題嗎?如何才能觸發PCA中斷呢?謝謝。
作者:
man1234567
時間:
2020-3-7 22:17
先拉高小延時再變低就是一個下降沿
作者:
湖南
時間:
2020-3-9 21:48
可以用單片機定時器去檢測
作者:
Y_G_G
時間:
2020-3-10 00:38
你不能用單片機自身來產生的
當單片機指令去執行的時候,不管什么中斷,都得等這條指令執行完了之后,才去響應中斷的
所以,要么是指令執行之后端口就是低電平了,PCA并沒有捕獲到一個完整的下降沿
要么就壓根就沒有觸發中斷
你可以通過一個IO串聯一個10K電阻給一個100uF的電容充電,而電容的正極就連著PCA就行了
當指令執行端口為低電平的時候,電容是通過10K電阻來放電的,時間要很長,至少能保證指令完成之后才產生下降沿
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1