用單片機制作的高精度數顯計數器 單片機C51計數器 要求:編寫一個計數器程序,將T0作為計數器來使用,對外部信號計數,將所計數字顯示在數碼管上。 該部分的硬件電路如圖所示,U1的P0口和P2口的部份引腳構成了6位LED數碼管驅動電路,數碼管采用共陽型,使用PNP型三極管作為片選端的驅動,所有三極管的發射極連在一起,接到正電源端,它們的基極則分別連到P2.0…P2.5,當P2.0…P2.5中某引腳輸是低電平時,三極管導通,給相應的數碼管供電,該位數碼管點亮哪些筆段,則取決于筆段引腳是高或低電平。圖中看出,所有6位數碼管的筆段連在一起,通過限流電阻后接到P0口,因此,哪些筆段亮就取決于P0口的8根線的狀態。 里面包含了:單片機C51計數器、計算器流程圖、工作原理,
上傳時間: 2013-11-16
上傳用戶:myworkpost
基于AT89C2051的多路舵機控制方案設計
上傳時間: 2013-12-07
上傳用戶:zukfu
TLC2543是TI公司的12位串行模數轉換器,使用開關電容逐次逼近技術完成A/D轉換過程。由于是串行輸入結構,能夠節省51系列單片機I/O資源;且價格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應用。 TLC2543的特點 (1)12位分辯率A/D轉換器; (2)在工作溫度范圍內10μs轉換時間; (3)11個模擬輸入通道; (4)3路內置自測試方式; (5)采樣率為66kbps; (6)線性誤差±1LSBmax; (7)有轉換結束輸出EOC; (8)具有單、雙極性輸出; (9)可編程的MSB或LSB前導; (10)可編程輸出數據長度。 TLC2543的引腳排列及說明 TLC2543有兩種封裝形式:DB、DW或N封裝以及FN封裝,這兩種封裝的引腳排列如圖1,引腳說明見表1 TLC2543電路圖和程序欣賞 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上傳時間: 2013-11-19
上傳用戶:shen1230
高質量C++/C編程指南
上傳時間: 2014-01-09
上傳用戶:huangld
基于單片機AT89C2051的九路多功能智力競賽搶答器的設計
上傳時間: 2013-10-13
上傳用戶:YUANQINHUI
8路遙控搶答器
上傳時間: 2013-11-17
上傳用戶:sunjet
對大學物理實驗中放電法測高阻的傳統實驗,采用單片機-計算機接口技術和模數變換技術,用計算機對數據進行處理得出結果。它既可以作為自動化測量設備,也可以作為高年級大學生課程設計或畢業設計題目,對于拓寬大學生知識面,提高實際動手能力和解決問題能力有一定的價值。
上傳時間: 2013-11-03
上傳用戶:jichenxi0730
袖珍型電子日歷及8路長時間定時控制器程序
上傳時間: 2013-10-29
上傳用戶:agent
GPS高精度的時鐘的設計和實現
上傳時間: 2013-11-25
上傳用戶:caiqinlin
單片機具有邏輯控制功能靈活的特點,復雜可編程邏輯器件(CPLD)具有集成度高、可靠性好及工作速度快的優點,基于二者各自的優點,設計了一種脈寬固定為1 μs,周期可調的單頭、雙頭、三頭三路脈沖產生電路,該脈沖發生器可實現在脈沖不間斷的情況下改變周期,其波形要求精度高、漂移小、抗干擾能力強。
上傳時間: 2013-10-22
上傳用戶:kqc13037348641