|
我用的是德飛萊 七星蟲(chóng)系列的stm32f103主板,型號(hào):尼莫M3S,想要連接心率傳感器,但是這款傳感器自帶的調(diào)試程序是51單片機(jī)的,想改成arm的程序。自帶程序中用51模擬了IIC接口,stm32主板自帶IIC接口,我現(xiàn)在要把原51代碼轉(zhuǎn)換成arm代碼,望各位指教!
0.jpg (299.1 KB, 下載次數(shù): 17)
下載附件
2019-6-3 21:47 上傳
1.jpg (130.32 KB, 下載次數(shù): 15)
下載附件
2019-6-3 21:51 上傳
2.jpg (42.58 KB, 下載次數(shù): 15)
下載附件
2019-6-3 21:52 上傳
3.jpg (418.36 KB, 下載次數(shù): 19)
下載附件
2019-6-3 21:52 上傳
單片機(jī)源程序如下:
- //-------------------------------------------------------------------------------------////程序名: MAX30100測(cè)試程序
- //版本: V1.0
- //功能: 測(cè)試MAX30100的ID及溫度部分功能。
- //-------------------------------------------------------------------------------------//
- //RCWL-0530模塊與51接口連接:
- // 1:VCC --〉 1.8V-5.5V電源
- // 2:SCL --〉 P3.5
- // 3:SDA --〉 P3.7
- // 4:INT --〉 NC
- // 5:IRD --〉 NC
- // 6:RD --〉 NC
- // 7:GND --〉 地
- //-------------------------------------------------------------------------------------//
- # include <reg52.h>
- # include <stdio.h>
- # include <intrins.h>
- //定義IIC接口
- sbit IIC_SCL =P3^5; //IIC的SCL
- sbit IIC_SDA =P3^7; //IIC的SDA
- bit IIC_ACK; //IIC的ACK
- int rda; //IIC讀出
- //-------------------------------------------------------------------------------------//
- //函數(shù): delayms()
- //功能: 延時(shí)程序
- //-------------------------------------------------------------------------------------//
- void delayms(unsigned int ms)
- {
- unsigned char i=100,j;
- for(;ms;ms--)
- {
- while(--i)
- {
- j=10;
- while(--j);
- }
- }
- }
- //-------------------------------------------------------------------------------------//
- //函數(shù): void iic_start();
- //功能: I2C總線開(kāi)始
- //-------------------------------------------------------------------------------------//
- // SCL --- --- ___
- // SDA --- ___ ___
- void iic_start()
- {
- IIC_SDA=1;
- _nop_();
- _nop_();
- IIC_SCL=1;
- _nop_();
- _nop_();
- IIC_SDA=0;
- _nop_();
- _nop_();
- IIC_SCL=0;
- _nop_();
- _nop_();
- }
- //-------------------------------------------------------------------------------------//
- //函數(shù): void iic_stop();
- //功能: I2C總線結(jié)束
- //需定義:
- //-------------------------------------------------------------------------------------//
- // SCL ___ --- ---
- // SDA ___ ___ ---
- void iic_stop()
- {
- IIC_SCL=0;
- _nop_();
- _nop_();
- IIC_SDA=0;
- _nop_();
- _nop_();
- IIC_SCL=1;
- _nop_();
- _nop_();
- IIC
復(fù)制代碼
|
|