10a7ce71fSopenharmony_ci# HiSpark-Pegasus 智能小车样例 20a7ce71fSopenharmony_ci 30a7ce71fSopenharmony_ci## 智能小车套件外设控制样例 40a7ce71fSopenharmony_ci 50a7ce71fSopenharmony_ci### 文件说明 60a7ce71fSopenharmony_ci 70a7ce71fSopenharmony_ci| 文件 | 说明 | 80a7ce71fSopenharmony_ci| ---------------- | -------------- | 90a7ce71fSopenharmony_ci| robot_hcsr04.c | 超声波测距样例 | 100a7ce71fSopenharmony_ci| robot_l9110s.c | 电机驱动样例 | 110a7ce71fSopenharmony_ci| robot_sg90.c | 舵机控制样例 | 120a7ce71fSopenharmony_ci| robot_sg90_mid.c | 舵机校准 | 130a7ce71fSopenharmony_ci| robot_tcrt5000.c | 红外传感器样例 | 140a7ce71fSopenharmony_ci 150a7ce71fSopenharmony_ci### 使用方法 160a7ce71fSopenharmony_ci 170a7ce71fSopenharmony_ci1、直接将robot文件夹拷贝到OpenHarmony源码applications/sample/wifi-iot/app目录下。 180a7ce71fSopenharmony_ci 190a7ce71fSopenharmony_ci2、需要编译哪个样例,就将对应的文件的注释打开,将其他的文件注释掉 200a7ce71fSopenharmony_ci 210a7ce71fSopenharmony_ci 比如需要编译超声波样例,BUILD.gn文件修改为如下内容: 220a7ce71fSopenharmony_ci 230a7ce71fSopenharmony_ci``` 240a7ce71fSopenharmony_cistatic_library("robot_demo") { 250a7ce71fSopenharmony_ci sources = [ 260a7ce71fSopenharmony_ci "robot_hcsr04.c", 270a7ce71fSopenharmony_ci #"robot_l9110s.c", 280a7ce71fSopenharmony_ci #"robot_sg90_mid.c", 290a7ce71fSopenharmony_ci #"robot_sg90.c", 300a7ce71fSopenharmony_ci #"robot_tcrt5000.c" 310a7ce71fSopenharmony_ci #"l9110s_pwm_control.c" 320a7ce71fSopenharmony_ci ] 330a7ce71fSopenharmony_ci 340a7ce71fSopenharmony_ci include_dirs = [ 350a7ce71fSopenharmony_ci "//utils/native/lite/include", 360a7ce71fSopenharmony_ci "//kernel/liteos_m/kal/cmsis", 370a7ce71fSopenharmony_ci "//base/iothardware/peripheral/interfaces/inner_api", 380a7ce71fSopenharmony_ci ] 390a7ce71fSopenharmony_ci} 400a7ce71fSopenharmony_ci``` 410a7ce71fSopenharmony_ci 420a7ce71fSopenharmony_ci3、修改app目录下的BUILD.gn文件 430a7ce71fSopenharmony_ci 440a7ce71fSopenharmony_ci``` 450a7ce71fSopenharmony_ciimport("//build/lite/config/component/lite_component.gni") 460a7ce71fSopenharmony_ci 470a7ce71fSopenharmony_cilite_component("app") { 480a7ce71fSopenharmony_ci features = [ 490a7ce71fSopenharmony_ci "robot:robot_demo" 500a7ce71fSopenharmony_ci ] 510a7ce71fSopenharmony_ci} 520a7ce71fSopenharmony_ci``` 530a7ce71fSopenharmony_ci 540a7ce71fSopenharmony_ci## 智能循迹避障小车样例代码 550a7ce71fSopenharmony_ci 560a7ce71fSopenharmony_ci### 文件说明 570a7ce71fSopenharmony_ci 580a7ce71fSopenharmony_ci| 文件 | 说明 | 590a7ce71fSopenharmony_ci| --------------- | ---------------------- | 600a7ce71fSopenharmony_ci| ssd1306 | ssd1306驱动代码 | 610a7ce71fSopenharmony_ci| robot_control.c | 智能小车主要控制代码 | 620a7ce71fSopenharmony_ci| robot_hcsr04.c | 智能小车超声波测距代码 | 630a7ce71fSopenharmony_ci| robot_l9110s.c | 智能小车电机控制代码 | 640a7ce71fSopenharmony_ci| robot_sg90.c | 智能小车舵机控制代码 | 650a7ce71fSopenharmony_ci| ssd1306_test.c | 智能小车OLED显示屏代码 | 660a7ce71fSopenharmony_ci| trace_model.c | 智能小车循迹功能代码 | 670a7ce71fSopenharmony_ci 680a7ce71fSopenharmony_ci### 使用方法 690a7ce71fSopenharmony_ci 700a7ce71fSopenharmony_ci1、直接将robot_demo文件夹拷贝到OpenHarmony源码applications/sample/wifi-iot/app目录下。 710a7ce71fSopenharmony_ci 720a7ce71fSopenharmony_ci2、需要编译哪个样例,就将对应的文件的注释打开,将其他的文件注释掉 730a7ce71fSopenharmony_ci 740a7ce71fSopenharmony_ci 比如需要编译超声波样例,BUILD.gn文件修改为如下内容: 750a7ce71fSopenharmony_ci 760a7ce71fSopenharmony_ci``` 770a7ce71fSopenharmony_cistatic_library("robot_demo") { 780a7ce71fSopenharmony_ci sources = [ 790a7ce71fSopenharmony_ci "robot_hcsr04.c", 800a7ce71fSopenharmony_ci "robot_l9110s.c", 810a7ce71fSopenharmony_ci "robot_sg90.c", 820a7ce71fSopenharmony_ci "trace_model.c", 830a7ce71fSopenharmony_ci "ssd1306_test.c", 840a7ce71fSopenharmony_ci "robot_control.c" 850a7ce71fSopenharmony_ci ] 860a7ce71fSopenharmony_ci 870a7ce71fSopenharmony_ci include_dirs = [ 880a7ce71fSopenharmony_ci "./ssd1306", 890a7ce71fSopenharmony_ci "//utils/native/lite/include", 900a7ce71fSopenharmony_ci "//kernel/liteos_m/kal/cmsis", 910a7ce71fSopenharmony_ci "//base/iothardware/peripheral/interfaces/inner_api", 920a7ce71fSopenharmony_ci ] 930a7ce71fSopenharmony_ci} 940a7ce71fSopenharmony_ci``` 950a7ce71fSopenharmony_ci 960a7ce71fSopenharmony_ci3、修改app目录下的BUILD.gn文件 970a7ce71fSopenharmony_ci 980a7ce71fSopenharmony_ci``` 990a7ce71fSopenharmony_ciimport("//build/lite/config/component/lite_component.gni") 1000a7ce71fSopenharmony_ci 1010a7ce71fSopenharmony_cilite_component("app") { 1020a7ce71fSopenharmony_ci features = [ 1030a7ce71fSopenharmony_ci "robot_demo:robot_demo" 1040a7ce71fSopenharmony_ci ] 1050a7ce71fSopenharmony_ci} 1060a7ce71fSopenharmony_ci``` 1070a7ce71fSopenharmony_ci 108