-
会不会是while语句有问题?
-
谢谢楼主的共享啊!辛苦辛苦!
-
STM32F的主频还是太低了,尤其是代码在FLASH中的运行速度更低,感觉优势不明显。
我最不能容忍的STM32F的问题是它的多机通讯硬件最多只能支持16个节点,搞得原先设备的多级通讯协议实现起来都很困难。 ...
你原来的多级通讯协议使用什么芯片实现的?怎么实现的?
-
#include "ioSTM8S207S8.h"
#include "Includes.h"
#include "Constants.h"
#include "Functions.h"
#include "Globals.h"
/* Author: EighthArmy @ July.2010 */
/*****************************************************
@Fn: ConfigInterrupt()
@Br: 配置中断输入口
@Pa: 无
@Rt: 无
@Sp: 无
*****************************************************/
void ConfigInterrupt( void ){
PA_DDR &= ~( 1 << PA6 ); /* 配置为输入口 */
PA_CR1 = ( 1 << C16 ); /* 配置上拉电阻 */
PA_CR2 = ( 1 << C26 ); /* 使能中断 */
CPU_CCR |= ( 1 << I1 ) + ( 1 << I0 ); /* 改为最高优先级 */
EXTI_CR1 = 0; /* 下降沿和低电平触发 */
}
#include "ioSTM8S207S8.h"
#include "Includes.h"
#include "Constants.h"
#include "Functions.h"
#include "Variables.h"
/* Author: EighthArmy @ July.2010 */
void main( void ){
uint i = 0;
ConfigCPU();
while( 1 )
{
if( uiTenor & TIME2_FLAG )
{
PG_ODR ^= 0x01;
PE_ODR ^= ( 1 << PE5 );
uiTenor &= ~TIME2_FLAG;
}
if( uiTenor & PA6_INT_FLAG )
{
PG_ODR ^= 0x02;
ucBuff[0] = 0x11;
ucBuff[1] = 0x22;
ucBuff[2] = 0x33;
ucBuff[3] = 0x44;
ucBuff[4] = 0x55;
ucBuff[5] = 0x66;
ucBuff[6] = 0x77;
ucBuff[7] = 0x88;
TransmitFrame( &ucBuff[0], 8 );
uiTenor &= ~PA6_INT_FLAG;
}
if( uiTenor & TIME4_FLAG )
{
i++;
if( i >= 100 )
{
PE_ODR ^= ( 1 << PE6 );
i = 0;
}
uiTenor &= ~TIME4_FLAG;
}
Comm1Events();
CalculatePulseLen();
//RefreshWWDG(); /* 清窗口看门狗,窗口看门狗在硬件复位 */
}
}
-
说句用后感言,大的问题没发现,bug好像暂时也没遇到。东西做出来总的效果还行,PP出过200K,就是对配套的电源方案有些敏感,不过这也好像是大部分测RC充放电时间方案都需要克服的问题吧。
测试了STM8L那个新版库,号称带有电荷转移技术的,抗干扰能力强了不少,比现在的1.0的库强多了,在变频器边上干活也挺认真,没STM8S挑。
总的说来花费不大的前提下,能为产品增加个卖点还是有价值的。
-
4# 版主
请问通过捕获测量到频率需要多长时间?还有结果是实时更新的吗?
只需一个周期即可测量到频率,结果是实时更新的。
-
你只解决了ROM的大小,而忽略了其它所占用的空间,楼主知道把ROM加大后把什么缩小了吗?
-
我也遇到同样问题 谢谢楼上
-
引用 8 楼 tju_lixiang 的回复:
引用 7 楼 wanglei5695312 的回复:
引用 6 楼 tju_lixiang 的回复:
中文乱码的问题解决了,问题出在编码上。数据库为UTF-8,list control 显示的为UTF-16,所以要进行转换。
请问怎么转换呀?
CString str(azResult[index]);
DWORD dwNum = MultiByteToWideChar (CP_U……
谢谢啊
-
BUILD & SYSGEN
[HKEY_LOCAL_MACHINE\init]
"Launch70"="Test.exe"
"Depend70"=hex:32,00
14(十六进制) = 20(十进制) 意思是explorer.exe依赖 Launch20的程序
你要依赖explorer.exe 那就是 32(50)
-
我以前做过红外接收的,可能是楼主没有弄懂红外编码吧。
尝试一下用外部中断的下降沿来检测试一下。
-
你确定一下你的数字接地和模拟接地,另外电源也要检测·
-
当你在PC上写程序,用到定时函数的时候,你想过没有:定时函数到底是经过哪些途径就可以到时就运行的呢?一个定时的时间过后,从cpu这个硬件到定时函数之间究竟是经历了怎样的过程,才使得你写的定时函数被调用。这个问题搞清楚了,单片机基本就没问题了。顺便,操作系统的知识也加强了不少。
-
这个问题难度还大呀?期待高手到来!
-
我现在在做单片机的工作,我就是女的。
引用 12 楼 lfchen 的回复:
单片机不分男女。
没听说过哪个IC是雌性的。
-
楼上的,你看贴要看清楚,你的回答不是针对我的问题,xp风格我已实现了,我的问题是说,我写的应用程序,为什么原来可以透明的,现在不透明了,再说了,实现xp风格,跟BSP一点关系都没有的,不知你是否做过wince系统开发,
-
extern "C"
{
extern "C" PROTOCOL_API int8 LocatePackage(unsigned char*, int16*);
.....
}
为啥要两个extern "c"?
帮顶
-
是BSP的安装包,不是SDK的安装包。安装此SDK后会自动安装哪些Platform下的sources文件的,无须再拷贝的阿
-
不错
-
不会mobile 学习学习