|
是基于stm32f4的工程代碼,用的是ad7195傳感器,參考手冊(cè)連接好電路后,直接可以下載使用。
本實(shí)驗(yàn)將實(shí)現(xiàn)如下功能:通過KEY1按鍵來控制24C02的寫入,通過另外一個(gè)按鍵KEY0來控制24C02的讀取。并在LCD模塊上面顯示相關(guān)信息。
單片機(jī)源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "lcd.h"
- #include "24cxx.h"
- #include "key.h"
-
- int main(void)
- {
- //u8 key;
- u16 i=0;
- //u8 value=0;
- unsigned int value;
-
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置系統(tǒng)中斷優(yōu)先級(jí)分組2
- delay_init(168); //初始化延時(shí)函數(shù)
- uart_init(115200); //初始化串口波特率為115200
-
- LED_Init(); //初始化LED
- LCD_Init(); //LCD初始化
- KEY_Init(); //按鍵初始化
-
- AT24CXX_Init(); //IIC初始化
-
- PS_INIT();
- delay_ms(100);
- ALS_INIT();
- delay_ms(100);
- while(1)
- {
- delay_ms(10);
- i++;
- printf("%d ",i);
- //delay_ms(20);
-
- // value=AT24CXX_ReadOneByte(ID_addr);
- // printf("%X ", value);
- // delay_ms(30);
-
- value=AT24CXX_ReadOneByte(C0DATAH_addr);
- printf("%X", value);
- delay_ms(10);
-
- value=AT24CXX_ReadOneByte(C0DATA_addr);
- printf("%X ", value);
- delay_ms(10);
-
- value=AT24CXX_ReadOneByte(C1DATAH_addr);
- printf("%X", value);
- delay_ms(10);
-
- value=AT24CXX_ReadOneByte(C1DATA_addr);
- printf("%X ", value);
- delay_ms(10);
-
- value=AT24CXX_ReadOneByte(PDATAH_addr);
- printf("%X", value);
- delay_ms(10);
-
- value=AT24CXX_ReadOneByte(PDATA_addr);
- printf("%X\n", value);
- delay_ms(10);
-
- }
- }
復(fù)制代碼
以上代碼下載,資料不完整,目前還在調(diào)試中,錯(cuò)誤很多,請(qǐng)大家多多指教:
IIC_散射光測量.rar
(502.88 KB, 下載次數(shù): 23)
2017-9-2 16:03 上傳
點(diǎn)擊文件名下載附件
完整工程代碼
|
|