-
37# honami520
64脚?偶用的不是64脚的芯片,偶只在48脚的STM32F103C8T6上测试过。偶这里的第一批硬件都在STM8上测试过,好像和运气没啥关系。无非就是一根信号而已。
如果你确认你的硬件完全兼容,固件也正常运行,那偶就没办法了,因为偶这里的同样硬件就能正常运行,无法调试你这里的情况。
-
是不同步的,谢谢二位人兄。。。。
明白了,我从新更改PCB。。。。
-
引用 8 楼 schlafenhamster 的回复:
你的算法不是"滑动平均的算法",只是"平均算法",滑窗的算法是“加进减出”,刚开始窗口内没东西不能输出数据,窗口宽度后,数据率就是输入数据率。
你的算法是把窗口填满后输出一个数据然后重来。
你的算法会使信号的带宽减小,不知道你的信号有多快?
你好,可能我对自己的算法没有表达清楚。
我现在的算法中,一个窗的宽度有24个系数。并且一共有3个窗,每个窗之间相差8个系数
那么第一个窗就是b1={a1,a2......a24} 第二个窗就是b2={a9,a10...a32} 第三个窗就是b3={a17,a18...a40}
所以总的窗就是b={a1,a2...a40}
输入数据的序号用i表示,p表示24个系数中的第几个系数,则p=i%24
算法的大致程序如下
for(i=0; ; i++)
{
if(i%24==0)
p=24;
else
p=i%24;
sum0=sum0+Vin(i)*(b[0]+p)
sum1=sum1+Vin(i)*(b[8]+p)
sum2=sum2+Vin(i)*(b[16]+p)
if (p == 8)
{Out =Sum2;
Sum2 = 0;}
elseif (p ==16)
{Out = Sum1;
Sum1 = 0;}
elseif p == 24
{Out = Sum0
Sum0 = 0;}
}
看这个算法,大致意思就是p对输入数据的序号i进行取模,p=i%24,即24是一个循环。每当p=8,16,24时,
都会得到一个sum,并且这个sum是24个Vin(i)*系数之和。 所以每当输入24个数据之后,都会得到三个SUM,最后把这三个SUM都除以24个系数之和,就得到了3个数据。
得出的结论就是每输入24个数据,就会得到3个数据,不知道这个算不算是“滑动平均”还是只是“平均”,谢谢。
-
建议你先把SDI接3.3V和0V都试下是不是读到的都是0xff
-
还是希望有gcc for stm8.目前发现gcc最好用了.也容易用.
-
引用 9 楼 wolfmvp 的回复:
我刚开始弄它的时候也遇到过这个问题,你通过Platform Builder定制一个BSP,然后通过该BSP包生成一个专用于你程序的SDK包,这样就不会出现你的问题了…
如何生成专用的SDK包?请指教!
-
之前也有重装过系统的,问题依旧。真的不知道什么原因了?
-
我也一样, 对硬件这一块不熟悉.
后悔当初逻辑电器那一块没学好啊.
还有单片机因为听说很容易挂课竟然没选.
后悔啊.
-
这么简单也能当毕业设计啊
-
在两个文件中写的名字不一样了
-
找工作还是要看运气的。
待遇,福利 这个可以直接问一下。
公司的风气和工作强度需要以后工作中慢慢感受了
-
需要学的东西好多啊 加油 努力
-
很好很好~~ 相当不错
-
回帖还能赚分?
-
串口助手很简单
如果我们通过串口发送0x31也就是发送1的ASCII 串口调试工具如果选择字符显示 就显示1 如果显示十六进制 也就显示0x31
如果你选择字符 你发来的数据 在串口调试助手上 是不能显示的, 所以有的时候 查看十六进制数据还是有必要的
-
read IST priority from reg
ReadRegDWORD( TEXT("HARDWARE\\DEVICEMAP\\KEYBD"), _T("Priority256"), &dwPriority );
if(dwPriority == 0)
{
dwPriority = 145;
}
RETAILMSG( INIT_MSG, (TEXT("+[KEYBD]IsrThreadProc\r\n")));
// update the IST priority
CeSetThreadPriority(GetCurrentThread(), (int)dwPriority);
LZ应该能明白在哪设置吧。。。reg
-
行,我在论坛了搜了下,大家对STM32保密的评价还是很高的。我就先用STM32去做,如果以后真的被解密了,那我们再找ST公司,让他给我们奖励一点,因为我们是第一个发现STM32芯片可以破解的。
-
看看启动部分那段代码,有个初始化RTC的。
之前我也遇到过。
-
1)STVD是一个调试环境,不是编译器,楼主的问题与STVD无关。这个问题与COSMIC编译器相关。
2)标准C语言要求所有的局部变量,必须在每个函数中所有的可执行语句之前声明和定义,不允许在程序中间插入任何定义变量的语句行。2楼说的对,C++的语法中才允许在程序中间定义变量。
总体而言,楼主说的这个问题是C语法所约定的,与STVD无关,也不是COSMIC特有的。
-
引用 13 楼 stoneqiang 的回复:
lyx_wq兄弟业余玩wince就这么强了,看样子我要好好努力呢
你现在在做linux?
过了年 准备找这方面的
现在工作搞ARM7+UCOSII