Find Jobs
Hire Freelancers

Arduino Uno Rev3 9-bit communication

$30-250 USD

进行中
已发布超过 11 年前

$30-250 USD

货到付款
I need to implement an Arduino Sketch (for Arduino Uno Rev 3 AND/OR Arduino Mega 2560) which give me access to communicate using Arduino serial port based on 9-bit communication. The basic features I need to solve are : 1) send pre-defined packets on TX (packet = byte array based on protocol specification defined at the end of this spec) (example of packet to send = 0x01 0x53 0x00 0x05 0x91 0x27 , 0x91 0x27 must be calculated using CRC formula Algorithm defined at the end of this spec) 2) listen for incoming packets on RX (packet = byte array based on protocol specification defined at the end of this spec). on each incoming packet must : 2.1 - determine if the first incoming byte has 9th bit flag set or not. 2.2 - check CRC to determine if it is correct or not (check CRC Algorithm spec defined at the end of this spec) INCOMING PACKET DEFINITION : ------------------------------------------- Communication must occurs through a serial data link operating at 19.2 KBaud in a "wakeup" mode. The 11-bit data packet consists of one start bit, eight data bits, a ninth ‘wakeup’ bit, and one stop bit. In wakeup mode (outgoing packets), arduino must sets the 9th (wakeup) bit each time it sends the first byte of a message to the client. For all additional bytes in the message, this bit is cleared. For incoming packets, Arduino must use the wakeup bit (9th bit) to determine whether the received byte is the first byte of a new message or an additional byte of the current message. CRC CALCULATION ================================================== The CRC follows the basic CCITT convention by starting with the most significant byte, least significant bit and applying the CRC polynomial x^16+x^12+x^5+1. Figure 5.1 details a fast CRC calculating routine from the public domain. The routine can be used to generate message CRCs as well as the variable-seed calculation needed for ROM signatures. CRC Algorithm //Function: CRC //Purpose: Calculate the 16-bit CRC of a string using // a byte-oriented tableless algorithm. The // routine inputs are the buffer pointer, the // buffer length, and the seed for the // calculation. The magic number 010201 octal // is derived from the CRC polynomial // x^16+x^12+x^5+1. //Passed in: unsigned char, int, unsigned short //Passed out: unsigned short unsigned short CRC(unsigned char *s, int len, unsigned short crcval) { register unsigned c,q; for (; len; len--) { c = *s++; q = (crcval ^ c) & 017; crcval = (crcval >> 4) ^ (q * 010201); q = (crcval ^ (c >> 4)) & 017; crcval = (crcval >> 4) ^ (q * 010201); } return (crcval); }
项目 ID: 2465816

关于此项目

5提案
远程项目
活跃12 年前

想赚点钱吗?

在Freelancer上竞价的好处

设定您的预算和时间范围
为您的工作获得报酬
简要概述您的提案
免费注册和竞标工作
颁发给:
用户头像
Hello , we can complete this project. Please check PM for bid details.
$180 USD 在8天之内
4.9 (2条评论)
2.5
2.5
5威客以平均价$232 USD来参与此工作竞价
用户头像
Hi, I can do this job.
$250 USD 在3天之内
5.0 (17条评论)
4.8
4.8
用户头像
Hi, please check PMB. Thanks.
$250 USD 在10天之内
5.0 (16条评论)
4.5
4.5
用户头像
Dear Sir, I have 10 year experience on analog design, audio system, power electronics, digital motor control, inverters, converters, DC-DC converters, power distribution sysetms, PCB design, circuit simulation, system simulation. The document which shows my background is attached. It shows my ability to make your work. I have gratuated Hacettepe University electric and Electronics engineer. I have passed several courses until now. My university is one of 500 th university in the world. To discuss details of project, you can ask me any questions. By talking we can agree on terms and conditions of your Project. I hope you will give oppurtinutiy to show my intelligence and reasoning. Regards. Beta
$200 USD 在4天之内
5.0 (3条评论)
1.4
1.4
用户头像
Custom software development (<b><i>Removed by Admin</i></b>)
$250 USD 在1天之内
0.0 (0条评论)
0.0
0.0
用户头像
Expert Arduino Engineer
$230 USD 在7天之内
0.0 (1条评论)
1.2
1.2

关于客户

URUGUAY的国旗
Maldonado, Uruguay
0.0
0
付款方式已验证
会员自9月 6, 2012起

客户认证

这个客户的其他工作

USB Receipt Printer Sniffer
$30-250 USD
谢谢!我们已通过电子邮件向您发送了索取免费积分的链接。
发送电子邮件时出现问题。请再试一次。
已注册用户 发布工作总数
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
加载预览
授予地理位置权限。
您的登录会话已过期而且您已经登出,请再次登录。