-
上淘宝看看,多比较几家
-
我也想要一套。。。。。。。。。。。。
-
只要你的引脚分配没有冲突,就没有问题。
只要操作正确,硬件I2C接口很好用。
-
lut1lut 的程序:
if (TxLength >0)
{
I2C_SendData(I2C1, *pTxBuffer1++);
TxLength--;
}
/* Disable the I2C_IT_BUF interrupt after sending the last buffer data
(last EV8) to no allow a new interrupt with TxE and only BTF could generate it */
else if(TxLength == 0)
{
I2C_ITConfig(I2C1, I2C_IT_BUF, DISABLE);
I2C_GenerateSTOP(I2C1, ENABLE); }
break;
本人的程序:
case I2C_EVENT_MASTER_BYTE_TRANSMITTING: /* Without BTF, EV8 */
if(i2cSendCount < i2cSendLen)
{
I2C_SendData(I2C1, i2cSendBuf[i2cSendCount++]);
}
else
{
I2C_ITConfig(I2C1, I2C_IT_BUF, DISABLE);
I2C_GenerateSTOP(I2C1, ENABLE);
}
break;
两者一样吧?
但是照样会产生多个0x70084,
但是吧I2C_GenerateSTOP(I2C1, ENABLE); 移动到0x70080中断事件中处理,
尽管有多个0x70084,
但是不需要等待
while(I2C_GetLastEvent(I2C1) == I2C_EVENT_MASTER_BYTE_TRANSMITTED);
程序也能正常工作。
只是不知其所以然
-
难题啊
-
学习了。呵呵呵
-
OSTimeDly (INT16U ticks) 他的最大参数才是65535个节拍。但是OSTimeDlyHMSM所能定时的范围更广,所以需要
OSTimeDly(ticks); //先作余数清除 ——A
while (loops > 0) //如果节拍数超过65536 个时钟节拍
{
OSTimeDly(32768); //执行两次延时,实现共65536 个时钟节拍 ——B
OSTimeDly(32768); ——C
loops--; //继续减1,直到为0
}
来多次完成该延时。如果tick太大,那么进入--A,进行一次任务调度,等A的时间到了之后,再往下做B,再进行调度。。。
一起都是自然而然的呀。。。
-
我在定时器里检查退出条件,当要退出时用下面两个,debug,releas都可以。
CDialog::OnOK();
CDialog::OnCancel();
或在在自己添加的按键的点击处理函数里用这两个函数,也都可以。
-
自己可以模仿着做个类似于MENU的Dialog,然后再自己绘制,我也在做,可是感觉按钮字体的大小没法改变,也想请教各位了,借楼主的地盘啦!
-
其实是因为生成的内核是ELF格式的文件,楼主可以看看是不是在选择编译vxWorks内核的时候某些选项有点问题?或者用elfToBin这个工具转换一下试试看。
-
很好的帖,谢谢楼主共享
-
另外看看RAM初始化部分针对128芯片了256的芯片有没有什么区别吧
-
遇到类似的问题,请把解决方法贴出来共享下
-
约定个地址就行了,放到起始地址则是不行的……
典型的应用就是像例程那样,bootloader放在起始地址(某种意义上的主函数);用户程序放到2000(某种意义上的模块),bootloader运行完直接跳转到该地址。
-
同时添加Jscript 5.6等组件
-
来晚了,我是用51做过,
没有分了
-
没关看门狗??
-
去网上查VC下相关的东东,是通有的
-
读注册表可以吧! 在注册表里面有FLASH的名字的配置项
-
uping