1、简单易用,可快速上手
2、流畅支持300个器件或1000个焊盘以下的设计规模
3、支持简单的电路仿真
4、面向学生、老师、创客
1、全新的交互和界面
2、流畅支持超过3w器件或10w焊盘的设计规模,支持面板和外壳设计
3、更严谨的设计约束,更规范的流程
4、面向企业、更专业的用户
标准版 听话的狗子
简介:使用hi3861制作一个可以语音控制的四足机器人
开源协议: CC-BY-NC 3.0
static void UART_Task(void){IotUartAttribute uart_attr = {//baud_rate: 9600.baudRate = 9600,//data_bits: 8bits.dataBits = 8,.stopBits = 1,.parity = 0,.rxBlock = 0,.txBlock = 0,};//Initialize uart driverIoTUartInit(HI_UART_IDX_1, &uart_attr);while (1){printf("=======================================\r\n");printf("SIZU_example*\r\n");printf("=======================================\r\n");// //通过串口1发送数据// IoTUartWrite(HI_UART_IDX_1, (unsigned char *)data, strlen(data));//通过串口1接收数据IoTUartRead(HI_UART_IDX_1, uart_buff_ptr, UART_BUFF_SIZE);SIZU_Uart_Cmd((char *)uart_buff_ptr);printf("Uart1 read data:%s\r\n", uart_buff_ptr);usleep(500000);}}`
// Front//--------------- | D1 | -------------------// -------- --------// | D4 | | D13 |// | joint4 | | joint13 |// ----- -------- --------- -----// | D5 | | D12 |// | joint5 | | joint12 |// -------- --------// | D11 | | D3 |// | joint11 | | joint3 |// ----- -------- --------- -----// | D12 | | D2 |// | joint12 | | joint2 |// -------- --------
enum{Get_Down,//趴下Hand_shake,//握手Go_Forward,//前进Go_Backward,//后退Go_Left,//左转Go_Right,//右转Twist_Body,//扭身子Stretch_Oneself,//伸懒腰WAIT//d};<br><br>//检测串口指令void SIZU_Uart_Cmd(char *str){char *Str;unsigned char ID=255;Str=&str[1];//定位到指令的数字部分“G1”ID=atoi(Str);if(strstr((const char *)str,"G")!=NULL) //如果字符串str中包含有“G”{switch(ID){case Get_Down: //趴下 G0sithome();printf("Get_Down\r\n");break;case Hand_shake: // 握手G1wink(10);printf("Handshake\r\n");break;case Go_Forward: // 前进G2forward(5);printf("Go_Forward\r\n");break;case Go_Backward: // 后退G3backward(5);printf("Go_Backward\r\n");break;case Go_Left: // 左转G4leftturn(5);printf("Go_Left\r\n");break;case Go_Right: // 右转G5rightturn(5);printf("Go_Right\r\n");break;case Twist_Body: // 扭身子twist();printf("LED_Add\r\n");break;case Stretch_Oneself: //伸懒腰printf("LED_Reduce\r\n");stand3();break;default:printf("%s ERROR",str);standhome();//站立break;}}memset(uart_buff,0,sizeof(uart_buff));}
// An highlighted block#define Echo 8 //Echo //GPIO8#define Trig 7 //Trig //GPIO7#define GPIO_FUNC 0float GetDistance (void) {static unsigned long start_time = 0, time = 0;float distance = 0.0;IotGpioValue value = IOT_GPIO_VALUE0;unsigned int flag = 0;/*=============== GPIO通信模式流程 1初始化GPIO========================================*/IoTIoSetFunc(Echo, GPIO_FUNC);//设置Echo连接IO为普通GPIO模式,无复用IoTGpioSetDir(Echo, IOT_GPIO_DIR_IN);//设置Echo连接IO为输入模式IoTGpioSetDir(Trig, IOT_GPIO_DIR_OUT);//设置Trig连接IO为输出模式/*=============== GPIO通信模式流程 2输出起始信号========================================*/IoTGpioSetOutputVal(Trig, IOT_GPIO_VALUE1);//拉高TrigIoTUdelay(20);//20usIoTGpioSetOutputVal(Trig, IOT_GPIO_VALUE0);//拉低Trig/*=============== GPIO通信模式流程 3检测Echo脚输出的高电平时间========================================*/while (1) {IoTGpioGetInputVal(Echo, &value);//读取Echo脚的电平状态if ( value == IOT_GPIO_VALUE1 && flag == 0) {//如果为高start_time = IoTGetUs();//获取此时时间flag = 1;}if (value == IOT_GPIO_VALUE0 && flag == 1) {//高电平结束变成低电平time = IoTGetUs() - start_time;//计算高电平维持时间start_time = 0;break;}}/*=============== GPIO通信模式流程 4代入公式计算========================================*/distance = time * 0.034 / 2;// printf("distance is %f\r\n",distance);return distance;}
<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"UTF-8\"><title>听话的狗子</title><style> body {user-select: none;text-align: center;}table {margin: 0 auto} td div {width: 150px;height: 150px;border: 1px solid darkgrey;display: flex;align-items: center;justify-content: center;color:deepskyblue;}#s {background-color: red;color: white;} td div:active {background: yellow;color: white;}button {margin: 0.5rem;width: 9rem;height: 3rem;font-size: 1.2rem;border-radius: 1rem;}button:hover {border-radius: 1rem;background-color: green;color: yellow;}</style></head><body><h1>网页控制</h1><button id=\"c\">安装模式</button><button id=\"a\">第一组动作</button><button id=\"b\">第二组动作</button><br><br><button id=\"d\">前进</button><br data-tomark-pass><br data-tomark-pass><button id=\"e\">左转</button><button id=\"f\">右转</button><br data-tomark-pass><br data-tomark-pass><button id=\"g\">后退</button><br data-tomark-pass><br data-tomark-pass><button id=\"h\">趴下</button><button id=\"i\">握手</button><button id=\"j\">伸懒腰</button><button id=\"k\">扭身子</button><br data-tomark-pass><br data-tomark-pass><script>function u(p) {return `${p}`;}function g(i) {return document.getElementById(i);}function fe(e, f){e.addEventListener('click', function (e) {/* do something*/f();});}function fg(u, f) {let x = new XMLHttpRequest();x.onreadystatechange = function () {if (this.readyState == 4 && this.status == 200) {f(x);}};x.open(\"GET\", u, true);x.send();}function fp(u, d, f, p) {let x = new XMLHttpRequest();if (p) {x.upload.addEventListener('progress', function (e) {p(e);});}x.onreadystatechange = function () {if (this.readyState == 4 && this.status == 200) {f(x);}};x.open('POST', u, true);x.timeout = 45000;x.send(d);}fe(g('a'), () => {fg(u('/dog/first'), () => {});});fe(g('b'), () => {fp(u('/dog/second'), () => {});});fe(g('c'), () => {fp(u('/dog/init'), () => {});});fe(g('d'), () => {fp(u('/dog/forward'), () => {});});fe(g('e'), () => {fp(u('/dog/left'), () => {});});fe(g('f'), () => {fp(u('/dog/right'), () => {});});fe(g('g'), () => {fp(u('/dog/backward'), () => {});});fe(g('h'), () => {fp(u('/dog/fall'), () => {});});fe(g('i'), () => {fp(u('/dog/handshake'), () => {});});fe(g('j'), () => {fp(u('/dog/stretch'), () => {});});fe(g('k'), () => {fp(u('/dog/twist'), () => {});});</script></body></html>
ID | Name | Designator | Footprint | Quantity |
---|---|---|---|---|
1 | 100nf | C1 | C0805 | 1 |
2 | 22u | C2,C3 | CASE-A_3216 | 2 |
3 | 10u | C4 | C0805 | 1 |
4 | 22u | C5 | C0805 | 1 |
5 | 0.1u | C6,C7 | C0805 | 2 |
6 | 12pf | C12,C13 | C0603 | 2 |
7 | HDR-F-2.54_1x8 | H1,H2 | HDR-F-2.54_1X8 | 2 |
8 | HDR-F-2.54_1x4 | H6 | HDR-F-2.54_1X4 | 1 |
9 | HDR-M-2.54_1x4 | J1,PCA9685,UART1 | HDR-M-2.54_1X4 | 3 |
10 | LED-0805_B | LED1,LED2,LED3 | LED0805_BLUE | 3 |
11 | M3 | M1,M2,M3,M4 | M3 125X200 | 4 |
12 | 1k | R1,R2,R3 | R0805 | 3 |
13 | 10k | R4 | R0805 | 1 |
14 | 5.1k | R5,R6 | R0805 | 2 |
15 | K2-3.6×6.1_SMD | RST1 | KEY-SMD_2P-L6.2-W3.6-LS8.0 | 1 |
16 | UZ1084G-3.3V-TN3-R | U2 | TO-252-3_L6.5-W5.8-P4.58-TL | 1 |
17 | ITCAST-HI3861 | U6 | WIFIM-SMD_ITCAST-HI3861 | 1 |
18 | LM1084S-5.0/TR | U8 | TO-263-3_L8.6-W10.2-P2.54-LS14.4-TL | 1 |
19 | CH340G | U9 | SOIC-16_L9.9-W3.9-P1.27-LS6.0-BL | 1 |
20 | 接线端子2P | U10,U11 | WJ2EDGR-5.08-2P(2P接线端子) | 2 |
21 | TYPE-C16PIN | USB2 | USB-C-SMD_TYPE-C16PIN | 1 |
22 | - | X1 | HC-49US_L11.5-W4.5-P4.88 | 1 |
展开
加载中...
是否需要添加此工程到专辑?