stm32gy30程序(串口展示).doc

  1. 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
  2. 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
  3. 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
超级终端显示效果: 程序代码: /*** 用 STM32F103C8 调试 GY-30 串口展示光强度 SDA: GPIOB0 SCL: GPIOB1 ***/ #include stm32f10x.h #include BH1750.h #include usart1.h uchar BUF[8]; //接收数据缓存区 int dis_data; //变量 int mcy; /* * 函数名:main * 描述 : 主函数 * 输入 :无 * 输出 : 无 */ int main(void) { float temp; /* 配置系统时钟为 72M */ SystemInit(); USART1_Config(); //串口配置 USART1_printf(USART1, \r\n 这是一个开始 \r\n); GPIOConfig(); Init_BH1750(); //初始化 BH1750 Delay_mms(180); //延时 180ms while(1) { Single_Write_BH1750(0x01); // power on Single_Write_BH1750(0x10); // H- resolution mode Delay_mms(800); //延时 180ms mread(); //连续读出数据,存储在 BUF 中 dis_data=BUF[0]; dis_data=(dis_data8)+BUF[1]; //合成数据 temp=(float)dis_data/1.2; USART_SendData(USART1 ,temp); while( USART_GetFlagStatus(USART1, USART_FLAG_TC)==SET); printf( \r\n 光强度是 %f lx\r\n, temp); } } //头文件 #ifndef __BH1750_H__ #define __BH1750_H__ #include stm32f10x.h #define uchar unsigned char #define uint unsigned int #define sda GPIO_Pin_0 //20 #define scl GPIO_Pin_1 //21 #define SlaveAddress 0x46 //定义器件在 IIC 总线中的从地址,根据 ALT ADDRESS 地址引脚不同修改 //ALT ADDRESS 引脚接地时地址为 0xA6,接电源时地 址为 0x3A extern uchar BUF[8]; //接收数据缓存区 extern int dis_data; //变量 extern int mcy; //表示进位标志位 void Init_BH1750(void); void conversion(uint temp_data); void Single_Write_BH1750(uchar REG_Address);//单个写入数据 uchar Single_Read_BH1750(uchar REG_Address); //单个读取内部寄存器数据 void mread(void); //连续的读取内部寄存器数据 void Delay_5us(void); void Delay_mms(uint16_t tmp); void GPIOConfig(void); #endif //头文件 #ifndef _USART1_H #define _USART1_H #include stm32f10x.h #include stdarg.h #include stdio.h void USART1_Config(void); int fputc(int ch, FILE *f); static char *itoa(int value, char *string, int radix); void USART1_printf(USART_TypeDef* USARTx, uint8_t *Data,...); #endif //串口 C 文件 #include usart1.h /* * 函数名:USART1_Config * 描述 :USART1 GPIO 配置,工作模式配置。115200 8-N-1 * 输入 :无 * 输出 : 无 * 调用 :外部调用 */ void USART1_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; /* config USART1 clock */ RCC_APB2PeriphClockCmd(R

文档评论(0)

137****0427 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档