-
我也试着做了一个,发现波特率10K 和 800K的时候收发没有,换其他波特率又都正常,请问楼主有遇到这个问题吗
-
。。。好像写错了
-
PA0口输入捕获模式这么配置对吗?我按照这么配置,输入PWM测出的频率明显不对
void TIM2_Config(void)//xus
{ TIM_ICInitTypeDef TIM_ICInitStructure;
TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;
TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Falling;
TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;
TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;
TIM_ICInitStructure.TIM_ICFilter = 0x0;
TIM_PWMIConfig(TIM2, &TIM_ICInitStructure);
/* Select the TIM3 Input Trigger: TI2FP2 */
TIM_SelectInputTrigger(TIM2, TIM_TS_TI1FP1);
/* Select the slave Mode: Reset Mode */
TIM_SelectSlaveMode(TIM2, TIM_SlaveMode_Reset);
/* Enable the Master/Slave Mode */
TIM_SelectMasterSlaveMode(TIM2, TIM_MasterSlaveMode_Enable);
/* TIM enable counter */
TIM_Cmd(TIM2, ENABLE);
/* Enable the CC2 Interrupt Request */
TIM_ITConfig(TIM2, TIM_IT_CC1, ENABLE);
}
-
请问能不能发个例子给我参考下,把高8位跟低8位分开不知道怎么写
以下是我写的发送字符的子函数,void LCD_pos(u8 X,u8 Y)
{
u8 pos;
if(X==0)
{X=0X80;}
else if(X==1)
{X=0X90;}
else if(X==2)
{X=0X88;}
else if(X==3)
{X=0X98;}
pos=X+Y;
LCD_cmd(pos);
}
void LCD_Display(u8 x, u8 y, u8 *Data)
{
LCD_pos(x,y);
//delay_nms(2);
while(*Data != '\0')
{
LCD_dat(*Data);
Data++;
//delay_nms(1);
}
}
-
请问能不能发个例子给我参考下,把高8位跟低8位分开不知道怎么写
以下是我写的发送字符的子函数,void LCD_pos(u8 X,u8 Y)
{
u8 pos;
if(X==0)
{X=0X80;}
else if(X==1)
{X=0X90;}
else if(X==2)
{X=0X88;}
else if(X==3)
{X=0X98;}
pos=X+Y;
LCD_cmd(pos);
}
void LCD_Display(u8 x, u8 y, u8 *Data)
{
LCD_pos(x,y);
//delay_nms(2);
while(*Data != '\0')
{
LCD_dat(*Data);
Data++;
//delay_nms(1);
}
}
-
已发送,注意接收。
一直没注意,发现这个帖子火了,意外的很
-
感觉你说的非常有道理,好像找到了问题的根源,呵呵
-
那是不是说,显示中文的 “设置显示位置”的子函数 跟显示数字跟字母的“设置显示位置”的子函数不一样的?
-
我最后用连续两次初始化的方式解决了问题,。不过后来发现,可能是因为7805坏了的缘故,输出电压有6v所以才会这样。
不过现在又出现了新问题,就是显示中文字符会乱码,数字和字母就不会
-
液晶初始化子函数里加入延时没用,我的液晶是用串行方式显示的,是不是主芯片需要加延时?
-
是要在液晶初始化之前加入延时吗?
-
看看下
-
:victory:
[ 本帖最后由 冷板凳 于 2012-7-25 19:24 编辑 ]
-
不会吧。。。什么情况?
-
[ 本帖最后由 冷板凳 于 2012-6-29 19:25 编辑 ]
-
菜鸟论坛玩家,附件有点大不能直接上传,在想办法中