-
STM32 HOT大叔 你能用中断 不用最高级 写I2C? (如果它用最高级 每次中断不会占>2US 那也可以应用)
因为I2C一般 是存的参数 一般不用最高级 操作 在开机或是修改参数时
读出和保存。
-
LZ自己的也行啊
-
可以不用容器控件,直接hide datagrid控件就OK啦
-
dsfdfdfd
-
我修改了波特率和那个发送数据个数后发现
如果更改发送数据个数为8个
/* transmit 1 message */
TxMessage.StdId=0x12;
TxMessage.ExtId=0x34;
TxMessage.IDE=CAN_ID_EXT;
TxMessage.RTR=CAN_RTR_DATA;
TxMessage.DLC=8;
for(i=0;i<8;i++)
{
TxMessage.Data[i]=i;
}
或者更改波特率设置为如下 CAN_InitStructure.CAN_SJW=CAN_SJW_1tq;
CAN_InitStructure.CAN_BS1=CAN_BS1_9tq;
CAN_InitStructure.CAN_BS2=CAN_BS2_8tq;
CAN_InitStructure.CAN_Prescaler=200;
以上两种更改都会导致在回环模式下都无法发送正常。
-
恭喜啊,刚想让你看看reginit.ini文件里DefaultClientDriver是什么呢
-
个人觉得串口接收没必要用中断
-
借用Veabol兄博客的EBOOT.BIN例子
Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F
00000000 42 30 30 30 46 46 0A 00 80 03 80 88 20 07 00 00 B000FF..?.??...
00000010 80 03 80 04 00 00 00 E2 01 00 00 9B 5C 01 EA 40 ?.?....?..沑.闌
00000020 80 03 80 08 00 00 00 F1 02 00 00 45 43 45 43 F0 ?.?....?..ECEC?
00000030 67 0A 80 48 80 03 80 04 00 00 00 DD 01 00 00 F0 g.?H?.?....?..
我觉得应该是这样的:EBOOT.BIN和NK.BIN被分为了很多段上面04 00 00 00就是一个dwRecLen对应9B 5C 01 EA 这4个字节的数据,地址为8003800
然后往后是dwRecAddr=80038040 dwRecLen= 08 00 00 00 dwRecChk=F1 02 00 00 这个校验和为45 43 45 43 F0 67 0A 808个字节的数据之和,这个是通过VerifyChecksum()函数计算的。下面个段一次类推~~~·直到调用
// last record of .bin file uses sentinel values for address and checksum.
if (!dwRecAddr && !dwRecChk)
{
break;
}
函数后,BIN文件下载完成。
在EBOOT的WriteRawImageToBootMedia函数中调用了OEMMapMemAddr()
我觉得OEMMapMemAddr()应该是先吧数据放到CACHE中吧,返回的应该是CACHE的地址。。
-
有可能是信号量等待超时,设备读写超时,或是其它任何等待但没有得到正确反馈的原因引起的。
你把timeout设长一点试一下!
-
卡死一般不太会是PC端的问题。
查查你单片机的程序,要是中断接收的话,很有可能就在中断里卡死了。
我怀疑是在等待标志位那里,或者是数据处理那里挂掉了。
你看一下吧。
-
移动和联通的卡都试过了,都有这样的情况出现。
-
顶一下啊 ding yi xia
-
a8255_PB =0x7878;
这样你就完了,定义好地址后就像寄存器一样操作。
-
引用 7 楼 linusafter 的回复:
谢谢各位!
这款CPU的UART寄存器的收发BUFFER是同一个地址,写它则是发寄存器,读它则是收寄存器。
如果向buf里面写入数据,buf的值虽然不变,可是状态寄存器却会发生相应的改变。查看到FIFO里面的字节数加1,如果不使能FIFO,也可以看到buf变成满的(之前没有写入时是空的)。
我用串口调试助手观察过:在电脑上发送字符,可以看到电脑上会回显同样的字符所对应的ASCII码。可是我不清楚串口调试助手的原理,不知道这样的结果说明了什么,可以说明UART接收正确吗?
这个要看你的串口调试助手设置了,如果设置成发送回显的话可能是仅仅通过软件来实现的,即没读相应寄存器,或者是那个串口模块读和写不是同一个BUFFER地址。
想测试发送是否正常最简单的办法就是你的板子发,让PC收。等这个调通之后就调板子的收,当PC发过来后板子读取数据再发给PC,确定要去掉串口调试助手的发送回显功能。
-
通常SD BOOT是用来烧录STEPLDR和EBOOT到空的FLASH中去,真正用作产品时最好还是用FLASH作为启动介质,否则的话那个SD 卡就要固化到你的机器中,如果不固化,万一用户换张SD卡或者格式化了SD卡就启动不了机器了。
-
帮顶下;
MARK,学习下、
-
上拉下拉都可以,只要不是浮空,个人认为最好是接GND即可。
-
..........
小DD你走错房间了吧?
-
期待解释,谢谢
-
与非门触发器、或非门触发器它们的触发是上升沿还是下降沿。主从触发器等基础电路。你的问题几句话可是说不明白的。