freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于51單片機的多功能信號發(fā)生器畢業(yè)設計報告-資料下載頁

2024-11-29 10:25本頁面

【導讀】本次設計是一個多功能信號發(fā)生器,可以產生、方波、鋸齒波和三角波?;?,功能更以擴充等實際的優(yōu)點。設計原理圖如下圖所示,其中單片機通過軟件。對鍵盤輸入的頻率數值進行處理,處理結果送與D/A轉換部分實現數/模轉換,同時在數碼管內顯示該頻率數值。波形的切換可以通過按鍵直接。在編程語言上,我們選擇自身比較熟悉的C語言,這樣在后期波形的調。試及與硬件銜接方面更容易發(fā)揮出自身優(yōu)勢。率和幅度進行程序的編寫,并將所寫程序裝入單片機的程序存儲器中。器的輸出端口輸出。經過設計及后期長時間的調試,設計的所有功能均已實現:。具有產生方波、鋸齒波、三角波三種周期性波形的功能。頻率范圍為100Hz~1kHz;頻率步進間隔≤100Hz。輸出波形幅度范圍0~5V,

  

【正文】 i=5。 while(h1==0)。 } } } } /*****************幅度設置 *********************/ void amp_set() { bit set=1。 change=1。 key_value=0。 while(key_value!=6) { if(!key_flag) key_flag=key_up()。 //按鍵未彈起時需檢測彈起 if(key_flag) {key_scan()。if(key_value!=0)key_flag=0。} //前次按鍵彈起后才能再次掃描按鍵 if(key_value==2) {set=~set。key_value=0。} else { if(set) { if(key_value==4){vpp+=10。if(vpp99) vpp=(90+vpp%10)。key_value=0。} if(key_value==5){vpp=10。if(vpp99) vpp=2。key_value=0。} else if(key_value!=6) key_value=0。 } if(!set) { if(key_value==4){vpp=(vpp/10*10)+((vpp%10)+1)%10。key_value=0。} if(key_value==5){vpp=(vpp/10*10)+((vpp%10)1)%10。key_value=0。} else if(key_value!=6) key_value=0。 } } dis1(vpp/10,1)。delay(1)。 dis(vpp%10,2)。delay(1)。 } key_value=0。 } /*****************頻率設置 *********************/ void frq_set() { change=1。 key_value=0。 while(key_value!=6) { if(!key_flag) key_flag=key_up()。 //按鍵未彈起時需檢測彈起 if(key_flag) {key_scan()。if(key_value!=0)key_flag=0。} //前次按鍵彈起后才能再次掃描按鍵 if(key_value==4){frq=frq+10。key_value=0。if(frq100) frq=100。} else if(key_value==5){frq=frq10。key_value=0。if(frq==0) frq=10。} else if(key_value!=6){key_value=0。} dis(0,4)。delay(1)。 dis(0,3)。delay(1)。 dis(frq/10%10,2)。delay(1)。 if(frq/100) {dis(1,1)。delay(1)。} } key_value=0。 } /*********正弦波函數 *********/ void sin() {TF0=0。 TR0=0。 P1M1=0X00。 P1M0=0XFF。 //設置 P1口為強推挽輸出 TMOD=0x01。 TH0=(66536ft)/256。 TL0=(66536ft)%256。 EA=1。 ET0=1。 TR0=1。 if(d1==0) { for(k=0。k64。) { DAC0832=sindot[k]。 k++。 } } frq_set()。 amp_set()。 } /*********鋸齒波函數 *********/ void juchi() {TF0=0。 TR0=0。 P1M1=0X00。 P1M0=0XFF。 //設置 P1口為強推挽輸出 TMOD=0x01。 TH0=(66536ft)/256。 TL0=(66536ft)%256。 EA=1。 ET0=1。 TR0=1。 if(d2==0) { for(k=0。k) { DAC0832=k。 k+=step。 } } frq_set()。 amp_set()。 } /*********三角波函數 *********/ void san() {TF0=0。 TR0=0。 P1M1=0X00。 P1M0=0XFF。 //設置 P1口為強推挽輸出 TMOD=0x01。 TH0=(66536ft)/256。 TL0=(66536ft)%256。 EA=1。 ET0=1。 TR0=1。 if(d3==0) { for(k=0。k64。) { DAC0832=sanjiao[k]。 k++。 } frq_set()。 amp_set()。 } } /*********方波函數 *********/ void fang() {TF0=0。 TR0=0。 P1M1=0X00。 P1M0=0XFF。 //設置 P1口為強推挽輸出 TMOD=0x01。 TH0=(66536ft)/256。 TL0=(66536ft)%256。 EA=1。 ET0=1。 TR0=1。 if(d4==0) { for(k=0。k) { if(k125) { DAC0832=0xff。 k+=step。 } if(k=125) { DAC0832=0。 k+=step。 } } frq_set()。 amp_set()。 } } void main() { while(1) { if(d1==0) sin()。 if(d2==0) juchi()。 if(d3==0) san()。 if(d4==0) fang()。 } }
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1