实验室温湿度监控系统设计-毕业论文内容摘要:

第 20 页 参考文献 [1]张毅刚 .刘杰.单片机原理及应用 [M].哈尔滨:哈工大出版社 第三版, 2020 [2]彭伟 .单片机 C 语言程序设计实训 100 例 [M].北京:电子工业出版社 第三版, 2020 [3]郭天祥 .51 单片机 C 语言教程 [M].北京:电子工业出版社 第三版, 2020 [4]胡汉才 .单片机原理及其接口技术 [M].北京:清华大学出版社 第三版, 2020 [5]郝鸿安 .常用数字集成电路应用手册 [M].北京: 中国计量出版社 第二版 ,2020:165187 [6]孙肖子 .田根登 .现代电子线路和技术实验 [M].高等教育出版社 第二版, 2020 [7]陈永甫 .红外探测与控制电路 [M].北京:人民邮电出版社 第二版, 2020 [8]张庆双 .报警器应用电路集粹 [M].北京:机械工业出版社 第三版, 2020 [9]肖景和 .实用报警电路 300 例 [M].北京:中国电力出版社 第二版, 2020 [10]王幸之 .89 系列单片机原理与 接口技术 [M].北京:北京航空航天大学出版社 第二版,2020 [11]Gonzalez Image Edition[M].Upper Saddle River : Prentice [12] System[M].北京:电子工业出版社, 2020 第 21 页 附录 附录 一 实物图 : 第 22 页 附录 二 数据接收端 总体原理图: GNDVCC1uC7104C6NRSTSWIMVCC10KR2GNDNRST104C5VCCNRST1KR3D2GNDSCKMOSIMISOIRQNRF_CENRF_CSSWIM1234J2CON4GND1VCC2CE3CSN4SCK5MOSI6MISO7IRQ8U4 NRF24L01GNDVCCNRF_CE NRF_CS IRQSCK MOSI MISOWIRELESS100uFC8104C9UART1_CK/TIM2_CH1/PD41UART1_TX/AIN5/PD52UART1_RX/AIN6/PD63NRST4OSCIN/PA15OSCOUT/PA26VSS7VCAP8VDD9[SPI_NSS]TIM2_CH3/PA310PB5(T)/I2C_SDA[TIM1_BKIN]11PB4(T)/I2C_SCL[ADC_ETR]12PC3/TIM1_CH3[TL1][TIM1_CH1N]13PC4/TIM1_CH4/CLK_CCO/AIN2/[TIM1_CHAN]14PC5/SPI_SCK[TIM2_CH1]15PC6/SPI_MOSI/[TIM1_CH1]16PC7/SPI_MISO/[TIM1_CH2]17PD1/SWIM18PD2/AIN3/[TIM2_CH3]19PD3/AIN4/TIM2_CH2/ADC_ETR20U3STM8S003F3GNDDOWNLOADVCC19V35GND8UD7UD+6X19X010NOS20RXD4TXD3U1CH340TCH340TVCC5GNDVCC1D2D+3NC4GND5USBVCC5GND103 C21 2Y112MHz22pC322pC4GND104 C1300R1D11 23 4U2CON2X2TXDRXDTXDRXDD3VCC1KR4GND1OUT2IN3OUT4U6VCC5C11104GNDVCC 数据采集节点 总体原理图: 231S1SWSPDTBT1BatteryGNDVCC1DQ2NC3GND4U5DHT11VCCDQGNDDHT11R7GNDVCC1uC13104C12PD5PD6NRST_1PA3SWIM_1VCC10KR6GNDNRST_1104C101KR8D5GNDPB5SCK_1MOSI_1MISO_1IRQ_1NRF_CE_1NRF_CS_1KEY0KEY1UART1_CK/TIM2_CH1/PD41UART1_TX/AIN5/PD52UART1_RX/AIN6/PD63NRST4OSCIN/PA15OSCOUT/PA26VSS7VCAP8VDD9[SPI_NSS]TIM2_CH3/PA310PB5(T)/I2C_SDA[TIM1_BKIN]11PB4(T)/I2C_SCL[ADC_ETR]12PC3/TIM1_CH3[TL1][TIM1_CH1N]13PC4/TIM1_CH4/CLK_CCO/AIN2/[TIM1_CHAN]14PC5/SPI_SCK[TIM2_CH1]15PC6/SPI_MOSI/[TIM1_CH1]16PC7/SPI_MISO/[TIM1_CH2]17PD1/SWIM18PD2/AIN3/[TIM2_CH3]19PD3/AIN4/TIM2_CH2/ADC_ETR20U10STM8S003F3PA1PA2D4VCC1KR5VCCNRST_1SWIM_11234J1CON4GNDDOWNLOADVCCDQGND1VCC2CE3CSN4SCK5MOSI6MISO7IRQ8U7 NRF24L01GNDVCCNRF_CE_1 NRF_CS_1 IRQ_1SCK_1 MOSI_1 MISO_1WIRELESS100uFC14104C15 第 23 页 附录三: 上位机界面运行效果图: 附录 四 : 数据接收端 程序: include include include include include include include define LED0 PA_ODR_ODR3 void USART1_Init(void)。 void UART1_SendByte(u8 data)。 extern u8 RxBuffer[3]。 第 24 页 extern u8 my_int_flag。 void main( void ) { u16 t。 //select Clock CLK_SYSCLKConfig(CLK_PRESCALER_HSIDIV1)。 //时钟太低有可能串口接收失败 CLK_HSICmd(ENABLE)。 GPIO_Init(GPIOA,GPIO_PIN_3, GPIO_MODE_OUT_PP_LOW_FAST)。 LED0=0。 USART1_Init()。 init_NRF24L01()。 TxBuf[1] = 0x55。 nRF24L01_TxPacket(TxBuf)。 delay_ms(10)。 while (1) { SetRX_Mode()。 if( nRF24L01_RxPacket(RxBuf) ) { UART1_SendByte(39。 =39。 )。 delay_ms(1)。 UART1_SendByte(RxBuf[0])。 delay_ms(1)。 UART1_SendByte(RxBuf[2])。 delay_ms(1)。 UART1_SendByte(RxBuf[4])。 delay_ms(2)。 UART1_SendByte(39。 =39。 )。 delay_ms(1)。 第 25 页 UART1_SendByte(RxBuf[0])。 delay_ms(1)。 UART1_SendByte(RxBuf[2])。 delay_ms(1)。 UART1_SendByte(RxBuf[4])。 delay_ms(1)。 } delay_ms(8)。 //1ms t++。 if(t1000) { t=0。 LED0=!LED0。 } } } ifdef USE_FULL_ASSERT void assert_failed(uint8_t* file, uint32_t line) { while (1) {} } endif void USART1_Init(void) { CLK_PeripheralClockConfig(CLK_PERIPHERAL_UART1,ENABLE)。 UART1_DeInit()。 第 26 页 UART1_Init((uint32_t)115200,UART1_WORDLENGTH_8D,UART1_STOPBITS_1,UART1_PARITY_NO, UART1_SYNCMODE_CLOCK_DISABLE,UART1_MODE_TXRX_ENABLE)。 UART1_ITConfig(UART1_IT_RXNE_OR,ENABLE)。 UART1_Cmd(ENABLE)。 } void UART1_SendByte(u8 data) { UART1_SendData8((unsigned char)data)。 while(UART1_GetFlagStatus(UART1_FLAG_TXE)==RESET)。 } // include include u8 TxBuf[TX_PLOAD_WIDTH]={0}。 u8 RxBuf[RX_PLOAD_WIDTH]={0}。 //u8 TX_ADDRESS[TX_ADR_WIDTH]={0x00,0x11,0x22,0x33,0x44}。 //本地地址 //u8 RX_ADDRESS[RX_ADR_WIDTH]={0x00,0x11,0x22,0x33,0x44}。 //接收地址 u8 TX_ADDRESS[TX_ADR_WIDTH]={0x22,0x34,0x56,0x78,0x90}。 //本地地址 u8 RX_ADDRESS[RX_ADR_WIDTH]={0x22,0x34,0x56,0x78,0x90}。 //接收地址 uchar sta。 //**************************************************************************************** //NRF24L01 初始化 void init_NRF24L01(void) { GPIO_Init(GPIOC,GPIO_PIN_7, GPIO_MODE_IN_PU_NO_IT)。 //miso GPIO_Init(GPIOC,GPIO_PIN_6, GPIO_MODE_OUT_PP_LOW_FAST)。 //mosi 第 27 页 GPIO_Init(GPIOC,GPIO_PIN_5, GPIO_MODE_OUT_PP_LOW_FAST)。 //sck GPIO_Init(GPIOD,GPIO_PIN_3, GPIO_MODE_OUT_PP_LOW_FAST)。 //CE GPIO_Init(GPIOB,GPIO_PIN_4, GPIO_MODE_OUT_PP_LOW_FAST)。 //CSN GPIO_Init(GPIOC,GPIO_PIN_4, GPIO_MODE_IN_PU_NO_IT)。 //IRQ delay_ms(20)。 CE_L。 // chip enable CSN_H。 // Spi disable SCK_L。 // Spi clock line init high SPI_Write_Buf(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH)。 // 写本地地址 SPI_Wr。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。