為什么adc0808仿真st始終為低電平,eoc始終為高電平?
單片機源程序如下:
- #include <reg52.h>
- #include<intrins.h>
- #include<absacc.h>
- #define uchar unsigned char
- #define uint unsigned int
- #define COM0808 XBYTE[0XEFF8]
- int X;
- char code dis_code[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
- char find_code[4];
- char seg_wei[]={0x01,0x02,0x04,0x08};
- void Delay1ms(uint count);
- void disp();
- void Int_Init();
- void main()
- {
- Int_Init();
- COM0808 = 0X00; //啟動adc0809
- while(1)
- {
- find_code[0]=X%1000%100%10;
- find_code[1]=X%1000%100/10;
- find_code[2]=X%1000/100;
- find_code[3]=X/1000;
- disp();
- }
- }
- //延時函數
- void Delay1ms(uint count)
- {
- uint j;
- while(count--!=0)
- {
- for(j=0;j<80;j++);
- }
- }
- //數碼管顯示處理
- void disp()
- {
- uchar i;
- for(i=0;i<4;i++)
- {
- P2=seg_wei[i];
- P1=dis_code[find_code[i]];
- Delay1ms(1);
- }
- }
- void Int_Init()
- {
- IT1 = 1;
- EA = 1;
- EX1 = 1;
- }
- void Int1() interrupt 1 //外部中斷1的中斷函數
- {
- X = COM0808;
- COM0808 = 0X00;//啟動
- }
復制代碼
所有資料51hei提供下載:
adc0809外部中斷調試.zip
(20.53 KB, 下載次數: 8)
2019-11-14 10:59 上傳
點擊文件名下載附件
仿真.zip
(30.93 KB, 下載次數: 8)
2019-11-14 10:59 上傳
點擊文件名下載附件
|