第一次发帖 如题 我的函数编译下载以后连LED都不闪了 LED初始化没问题 试过了,如果去掉打印语句灯就正常,但无论怎么样都没发送,还有例程里面#include "stm32_eval.h"是哪个文件我找不到,不加可以吗?? 中文的注释是我自己的理解 如果有错误还请指正,刚刚看其他贴好像说用到串口的IO要初始化,但我买的板配的程序没初始化IO啊,只有串口初始那部分,这是怎么回事,没学C 所以有点吃力 程序如下
#include "stm32f10x_lib.h"
#include <stdio.h>
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
USART_InitTypeDef USART_InitStruct;
void Delay(u32 time) //软件延时程序,不是精确的延时
{u32 i,j;
for(j=0; j<time; j++)
{
for(i=0;i<12000;i++);
}
}
void usart_init(void) //串口初始化
{
//注意3.5的版本InitStruct和例程里面名字有差别的
USART_InitTypeDef USART_InitStruct;
USART_InitStruct.USART_BaudRate = 115200;
USART_InitStruct.USART_WordLength = USART_WordLength_8b; //设置为8位
USART_InitStruct.USART_StopBits = USART_StopBits_1; //设置停止位为1位
USART_InitStruct.USART_Parity = USART_Parity_No; //没有奇偶校验位
USART_InitStruct.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //设置发送或接收
USART_InitStruct.USART_HardwareFlowControl = USART_HardwareFlowControl_None; //没有数据流控制,什么意思,百度一下
//设置时钟串口COM1时钟并根据上面参数初始化并使能
USART_Init(USART1, &USART_InitStruct);
}
PUTCHAR_PROTOTYPE
{
USART_SendData(USART1, (int) ch);
while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET)
{
}
return ch;
}
int main(void)
{
LED_config(); //初始LED
usart_init(); //初始化LED和串口
printf("\n\r---------------------------------------------\n ");
printf("\n\rW12345678\n ");
printf("\n\r第一次学习串口发送123\n");
while (1)
{
GPIO_ResetBits(GPIOA, GPIO_Pin_2|GPIO_Pin_3);
Delay(0x00005F);
GPIO_SetBits(GPIOA, GPIO_Pin_2|GPIO_Pin_3);
Delay(0x00005F);
printf("\n\r神舟I号 串口1测试程序123\n");
}
}
再问一下下面部分是干嘛的 屏蔽后好像不影响程序
#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
最后以个人角度奉劝大家一句,买板不要买神舟板。。。。你买了会懂得
至于你信不信,我反正信了~~~~~ |