藍橋杯CT107D比賽開發板參賽筆記(一)

2021-09-19 23:20:27 字數 1578 閱讀 8403

藍橋杯大賽的專用實驗板是國信長天公司的ct107d微控制器板子,這個板子用起來太多不順手,相信使用過的同學也深有體會。不人性的一面體現在板子擴充套件的四片74hc573鎖存器,這對新手來說打擊可不小。

好,首先來看看這坑人的573鎖存器。上圖。

四片573由上到下分別連線8位led,數碼管段選,數碼管位選,uln2003驅動晶元。如果想用微控制器控制上述硬體,就要選通其中對應的鎖存器。那要怎樣選通這些鎖存器呢。仔細看電路圖就會知道,573輸入端都由p0口控制,為了不使其衝突,增加了138解碼器來擴充套件埠。也就是138解碼器決定選通哪個573,要想控制對應的硬體工作,就要先通過138解碼器選擇對應的573晶元,然後再設定p0口電平。下圖就是138解碼器的電路原理圖:

具體的程式設計思路是這樣的:初始化p2口,選擇對應的碼位,設定p0口。

舉個例子,我要控制數碼管第一位顯示數字0,就要選通位選和段選的鎖存器然後p0設定。

**如下:

p2  &= 0x1f; //初始化p2^5,6,7口

p2 |= 0xc0; //選通y6c鎖存器

p0 = 0x80; //設定數碼管第一位

p2 &= 0x1f;

p2 |= 0xe0;//選通y7c鎖存器

p0 = 0xc0; //共陽極數碼管段選0

以上程式在c51環境下可以輕鬆實現數碼管顯示。

同理,led、蜂鳴器、繼電器、電機等控制也是相同。

設定初始化**如下:

led

p2 &= 0x1f;

p2 |= 0x80;//選擇y5c鎖存器

p0 = 0;//點亮全部

蜂鳴器

p2 &= 0x1f;

p2 |= 0xa0;//選通y5c鎖存器

p0 = 0x80;//鳴響蜂鳴器

繼電器

p2 &= 0x1f;

p2 |= 0x20;//選通y5c

p0 = 0x20;//吸合繼電器

我們再來看一下,隨板子自帶的stc轉接板。

小板上的主核是stc公司的iap15系列1t微控制器,轉接後可以用作c52和stc12功能的微控制器。其實我試過iap15的部分功能,轉接後雖然44個引腳沒有全部引出,但還是可以使用普通的功能,比如定時器的1t時鐘模式。當轉接為40腳的c52時,需要注意個別引腳的變化。

注意,由於iap15整合復位電路和高精度r/c時鐘,不需要外部晶振,xtal1和xtal2是空的,傳統的wr、rd換成了4.2,4.4。

CT107D(藍橋杯)開發板超聲波模組

超聲波模組測距的簡單寫法 1 簡單原理 通過p10引腳傳送8個40khz的脈衝之後開始定時器1開始計時 當p11埠收到訊號的時候停止計時 因為聲音在空氣傳播的速度為340m s,又因為微控制器乙個機器週期 就是定時器計一次時間 大概是1us 所以每us的距離大概為340 10 3cm 10 6 因為...

CT107D(藍橋杯)開發板液晶模組的使用

二 液晶的寫命令和寫資料的方法 dat 要寫入的數 當rs 0 的時候寫入的是命令當rs 1 的時候寫入的是資料 void lcd com uchar dat 寫命令void lcd write uchar dat 寫資料 三 lcd1602一些對應的指令及初始化 功能 設定資料匯流排位數 顯示的行...

CT107D藍橋杯EEPROM使用(8)

今天我給大家講一下eeprom的使用,該記憶體採用的是iic通訊,所有我們要有乙個iic驅動程式,或者自己寫乙個,我前面寫過乙個,我這裡就不寫了。那麼下面我寫乙個開機計數的程式吧,這裡需要顯示出來。這裡我選擇數碼管顯示,數碼管驅動前面也有,我就直接用了 unsigned char read eepr...