藍橋盃國賽 賽前易錯歸納

2021-09-22 20:14:56 字數 1110 閱讀 1913

1、讀按鍵函式裡key_return在定義時一定要賦初值0,一定要

不然會出現按一下按鍵觸發一系列問題

2、read_key()函式裡定義的key_return需要賦初值0

3、xdata u8 send_date[7][22]=; //二維陣列占用空間太大,如果直接放在片內ram中會空間不足

4、回車換行寫\r\n,如果寫\n\r可出現傳輸格式偶爾錯誤

(key_press==0x77)而不是key_return == 4

串列埠通訊

①注意字元0對應48

②使用完後最好把緩衝區清除一下

建議使用定時器1作為波特率發生器,定時器2作為數碼管重新整理定時器,

優先順序:定時器0>定時器1>定時器2

如果使用定時器0作為數碼管重新整理電路,定時器1作為波特率發生器,則偶爾會發生串列埠通訊被定時器0打斷,也就會出現得發幾次資料發生實現我們的功能

串列埠通訊

頻率測量計(ne555)

這個pulse_count一定要定義成u16

read_val裡switch裡是對key_press進行判斷

呼吸燈時pwm_duty在1和9時候切換方向

①iic讀adc函式忘記了寫返回值

②iic寫時候在.h裡巨集定義了u8 u16,忘記了在.c裡包含.**件,故使用u8 u16後錯誤

③讀eeprom時也忘記給read_at24c02寫返回值了,導致讀不到資料,重新上電後資料不變

ad/da

iic讀adc函式忘記了寫返回值

使用定時器1作為超聲波距離檢測定時,數碼管及其他定時使用定時器0/2

①超聲波測距裡while後沒有加分號

②超聲波儲存距離的變數需要定義u16

③定時器1不能開啟et1,因為et1是允許中斷位,超聲波只要有計時功能就行,中斷會影響到計時

使用定時器1來定時,初始化定時器1時一定要寫成12t模式

void timer1init(void)		//1毫秒@11.0592mhz

定時器2定時也要開ea

void timer2init(void)		//1毫秒@11.0592mhz

藍橋盃國賽

過去挺久了,最近也荒廢了挺久,終於有時間來寫寫回憶吧 也要重新開始看演算法開始刷題了,只有努力才會有好運 題解啥的也不說了吧,網上應該挺多,當時填空題除了兩個,大題兩個應該只有部分分,混了個國三,今年題目多也變難了點,自己還是太菜。其實最想說的是第二題和第三題,第二題居然沒想到是揹包。在這個題中猶豫...

藍橋盃國賽總結

國三划水 怎麼說呢,這屆藍橋杯的題有點複雜,原來國賽都是6道題,今年一下子變成了10道題,然後沒乙個題可以暴力的,尷尬,我做的2016 2018年的國賽題,哎,基本沒用,現在大多數是在考思維,明顯的考演算法的比較少。本來至少可以拿國二的,前兩個小時搞掉了2小1大,但是後來每一道題到不簡單,但深入做肯...

藍橋盃國賽前一周深夜思索

失眠已經伴隨我了兩年了,今天恰逢5.21,幾個小時前,還是5.20,這不就是廢話嗎?再往前推一年,也就是上乙個5.20,我做了一件傻事,想想揪心,現在我只想著,我需要不斷的強化自己,只有自己變得足夠強,我才能得到我想要的。雖然藍橋杯省賽有驚無險,順利進入了決賽,但是我深知,藍橋雖水,然非小覷,畢竟我...