久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
STM8藍牙串口程序 發送端
[打印本頁]
作者:
51ailove
時間:
2018-10-25 20:57
標題:
STM8藍牙串口程序 發送端
藍牙串口程序
單片機源程序如下:
/**
******************************************************************************
* @file UART2_Printf\main.c
* @brief This file contains the main function for: retarget the C library printf
* /scanf functions to the UART2 example.
* @author MCD Application Team
* @version V2.0.0
* @date 25-February-2011
*******************************************************************************/
/* Includes ------------------------------------------------------------------*/
#include "nRF24L01.h"
#include "stm8s.h"
#include "stdio.h"
/**
* @addtogroup UART2_Printf
* @{
*/
/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* _IAR_ */
#define PUTCHAR_PROTOTYPE int putchar (int c)
#define GETCHAR_PROTOTYPE int getchar (void)
/* _RAISONANCE_ */
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
/* Private function prototypes -----------------------------------------------*/
/* Private functions ---------------------------------------------------------*/
/**
* @brief Main program.
* @param None
* @retval None
*/
void delayms(unsigned int time)
{
unsigned int i;
while(time--)
for(i=900;i>0;i--)
inerDelay_us(1);
}
void GPIO_Configuration(void)
{
//無線模塊的IO口初始化
//MISO 讀取數據 浮動輸入,沒有外部中斷
GPIO_Init(NRF24L01_CE_PORT, (GPIO_Pin_TypeDef)(NRF24L01_CE_PIN ), GPIO_MODE_OUT_PP_HIGH_FAST);//ce
GPIO_Init(NRF24L01_CS_PORT, (GPIO_Pin_TypeDef)(NRF24L01_CS_PIN ), GPIO_MODE_OUT_PP_HIGH_FAST);//cs
GPIO_Init(NRF24L01_SCK_PORT, (GPIO_Pin_TypeDef)(NRF24L01_SCK_PIN ), GPIO_MODE_OUT_PP_HIGH_FAST);//sck
GPIO_Init(NRF24L01_MOSI_PORT, (GPIO_Pin_TypeDef)(NRF24L01_MOSI_PIN ), GPIO_MODE_OUT_PP_HIGH_FAST);//MOSI
GPIO_Init(NRF24L01_MISO_PORT, (GPIO_Pin_TypeDef)(NRF24L01_MISO_PIN), GPIO_MODE_IN_FL_NO_IT);//MISO
GPIO_Init(NRF24L01_IRQ_PORT, (GPIO_Pin_TypeDef)(NRF24L01_IRQ_PIN ), GPIO_MODE_IN_FL_NO_IT); //IRQ
// GPIO_Init(NRF24L01_MISO_PORT, (GPIO_Pin_TypeDef)(NRF24L01_MISO_PIN), GPIO_MODE_OUT_PP_HIGH_FAST);//MISO
//GPIO_Init(NRF24L01_IRQ_PORT, (GPIO_Pin_TypeDef)(NRF24L01_IRQ_PIN ), GPIO_MODE_OUT_PP_HIGH_FAST); //IRQ
// GPIO_Init(GPIOA, (GPIO_Pin_TypeDef)(GPIO_PIN_6), GPIO_MODE_OUT_PP_HIGH_FAST);//ce
GPIO_Init(GPIOD, (GPIO_Pin_TypeDef)(GPIO_PIN_3), GPIO_MODE_OUT_PP_HIGH_FAST);//ce
}
void Delay(uint16_t nCount)
{
/* Decrement nCount value */
while (nCount != 0)
{
nCount--;
}
}
void init_io(void)
{
delayms(2000); //延時 100us
GPIO_WriteHigh(NRF24L01_CE_PORT, NRF24L01_CE_PIN);
GPIO_WriteHigh(NRF24L01_CS_PORT, NRF24L01_CS_PIN);
GPIO_WriteLow(NRF24L01_SCK_PORT, NRF24L01_SCK_PIN);
}
void main(void)
{
uchar TxBuf[TX_PLOAD_WIDTH]={0x01,0x01,0x01,0x01,0x01};
char ans;
GPIO_Configuration();
SPI_DeInit();
/* Initialize SPI in Slave mode */
SPI_Init(SPI_FIRSTBIT_MSB, SPI_BAUDRATEPRESCALER_2, SPI_MODE_MASTER, SPI_CLOCKPOLARITY_LOW,
SPI_CLOCKPHASE_1EDGE, SPI_DATADIRECTION_2LINES_FULLDUPLEX, SPI_NSS_SOFT,(uint8_t)0x07);
/* Enable the SPI*/
SPI_Cmd(ENABLE);
CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); //16MHz高速內部RC振蕩器(HSI)
init_io();
GPIO_WriteLow(GPIOD, GPIO_PIN_3);
GPIO_WriteHigh(GPIOA, GPIO_PIN_6);
TxBuf[0]=0x01;
// GPIO_WriteHigh(GPIOD, GPIO_PIN_3);
/* UART2 configuration ------------------------------------------------------*/
UART2_DeInit();
/* UART2 configured as follow:
- BaudRate = 115200 baud
- Word Length = 8 Bits
- One Stop Bit
- No parity
- Receive and transmit enabled
- UART2 Clock disabled
*/
UART2_Init((uint32_t)9600, UART2_WORDLENGTH_8D, UART2_STOPBITS_1, UART2_PARITY_NO,
UART2_SYNCMODE_CLOCK_DISABLE, UART2_MODE_TXRX_ENABLE);
/* 前頭檢測 ------------------------------------------------------*/
printf("\n\r正在檢測系統設備...\n\r");
delayms(500);
if(NRF24L01_Check()==0)
{
delayms(500);
printf("\n\r/********************************* \n\r");
printf("\n\r>>>歡迎使用韭菜門禁系統<<<\n\r");
printf("\n\r/********************************* \n\r");
}
else printf("\n\r>>>請檢查設備是否安裝正確<<<\n\r");
printf("\n\r請輸入命令:\n\r");
printf("\n\r門禁>> 請輸入:1\n\r");
printf("\n\r門開>> 請輸入:2\n\r");
printf("\n\r報警>> 請輸入:3\n\r");
while(1)
{
ans = getchar();
if(ans=='1'|ans=='2'|ans=='3')
{
TxBuf[0]=ans-'0';
printf("\n\r合法輸入\n\r");
if(nRF24L01_TxPacket(TxBuf)==TX_OK)
{
GPIO_WriteHigh(GPIOD, GPIO_PIN_0);
GPIO_WriteHigh(GPIOD, GPIO_PIN_2);
GPIO_WriteHigh(GPIOD, GPIO_PIN_3);
Delay(0xFFFF); //延時
GPIO_WriteLow(GPIOD, GPIO_PIN_0);
GPIO_WriteLow(GPIOD, GPIO_PIN_2);
GPIO_WriteLow(GPIOD, GPIO_PIN_3);
printf("\n 發送成功 \n\r");
delayms(200);
}
else printf("\n\r發送失敗\n\r");
}
else printf("\n\r請輸入正確的命令\n\r");
}
}
/**
* @brief Retargets the C library printf function to the UART.
* @param c Character to send
* @retval char Character sent
*/
PUTCHAR_PROTOTYPE
{
/* Write a character to the UART2 */
UART2_SendData8(c);
/* Loop until the end of transmission */
while (UART2_GetFlagStatus(UART2_FLAG_TXE) == RESET);
return (c);
}
/**
* @brief Retargets the C library scanf function to the USART.
* @param None
* @retval char Character to Read
*/
GETCHAR_PROTOTYPE
{
#ifdef _COSMIC_
char c = 0;
#else
int c = 0;
#endif
/* Loop until the Read data register flag is SET */
while (UART2_GetFlagStatus(UART2_FLAG_RXNE) == RESET);
c = UART2_ReceiveData8();
return (c);
}
#ifdef USE_FULL_ASSERT
/**
* @brief Reports the name of the source file and the source line number
* where the assert_param error has occurred.
* @param file: pointer to the source file name
* @param line: assert_param error line source number
* @retval None
*/
void assert_failed(uint8_t* file, uint32_t line)
{
/* User can add his own implementation to report the file name and line number,
ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
/* Infinite loop */
while (1)
{
}
}
#endif
/**
* @}
*/
/******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/
復制代碼
所有資料51hei提供下載:
發送端.zip
(12.54 KB, 下載次數: 12)
2018-10-25 20:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
免费观看日韩av
|
亚洲精品成人在线
|
精品免费国产一区二区三区
|
性色网站
|
手机日韩
|
亚洲精品一区二区在线观看
|
亚洲一区二区三区四区五区午夜
|
亚洲精品一
|
久久蜜桃资源一区二区老牛
|
亚洲人成在线观看
|
91精品一区
|
国产在线二区
|
亚洲三区在线观看
|
久久精品久久综合
|
日韩精品一区二区三区高清免费
|
中文字幕 在线观看
|
超碰在线97国产
|
天天操天天拍
|
国产亚洲欧美在线视频
|
久久久这里只有17精品
|
亚洲高清一区二区三区
|
一区二区在线看
|
亚洲成人免费观看
|
欧美精品一区二区三区四区
|
一区二区三区在线免费观看
|
精品久久久久一区二区国产
|
日韩av免费在线电影
|
亚洲精品国产电影
|
超碰免费在线
|
久草中文网
|
在线2区
|
国产精品成人一区二区
|
精品在线看
|
日韩高清国产一区在线
|
国产 日韩 欧美 制服 另类
|
亚洲精品www
|
久久国产成人
|
久久久国产一区二区三区
|
一区二区三区免费看
|
毛片网在线观看
|
欧美理论片在线
|