Cypress技术william hill官网
直播中

宁升椿

7年用户 270经验值
私信 关注
[问答]

怎么把4字节的数据从PC发送到PSoC

你好,
我想使用UART用户模块。
我想把4字节的数据从PC发送到PSoC。
PSoC在接收时应该发送2字节的数据回来。
我将使用一个4字节数组的RX缓冲区和2字节数组的TX缓冲区。
当接收到4字节数据时,应该发生中断。
我怎样才能实现它
当做
多石的

以上来自于百度翻译


     以下为原文
   Hi ,
    I want to use UART user module.
    I want to send 4 bytes of data from PC to PSOC.
    PSOC when receive should send 2 bytes of data back.
    I will use a 4 byte array for rx buffer and 2 byte array for tx buffer.
    When 4 bytes data is received interrupt should occur.
    How can i implement it
     
    regards
    Rocky

回帖(2)

王琳

2019-6-3 11:05:16
坦白地说,你不能。
由于PSoC 1中的中断与硬件有关,所以可以在每个字符的接收处产生中断。
我建议让输入字符的数量(检索和存储它们)之后,当你的tRESHOLD(或一个预定义的序列)到达时,你设置一个标志(一个全局变量),在你的主循环中检查,如果SET相应地反应(或者只是检查计数)。
快乐编码
鲍勃

以上来自于百度翻译


     以下为原文
  Frankly : you cannot.
    An Interrupt can be generated at the receive of EACH character since interrupts in PSoC 1 are related to hardware.
    I would suggest to have the number of incoming characters counted (after retrieving and storing them) and when your treshold (or a pre-defined sequence) is reached you set a flag (a global variable) that you inspect in your main-loop and, if set react accordingly (or just inspect the count).
     
    Happy coding
    Bob
举报

王淑珍

2019-6-3 11:13:42
通常使用环形缓冲区,所有数据接收将在环形缓冲区中排队,主回路检查头和尾指针。
如果你知道字节总数是一个固定数,那么只需在接收字节数时进行解码,如果是正确的,然后将字节发送出去。

以上来自于百度翻译


     以下为原文
   I normally use a ring buffer, all data receive would be queue up in the ring buffer and the main loop inspect the head and tail pointer. 
    if you know the total number of bytes is a fix number, then just do the decoding when the number of bytes received, and if that is correct then send the bytes out.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分