微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > zStack Light 中, 在SampleLight-EB-router 里面, 加入SampleLight-Zlight-router 里面调整LED色相的功能

zStack Light 中, 在SampleLight-EB-router 里面, 加入SampleLight-Zlight-router 里面调整LED色相的功能

时间:10-02 整理:3721RD 点击:

前言:
在 zStack-Light 裡面,
1. 使用 SampleLight-Zlight-router 這一個編譯的模式,將程式放到zLight2,
就可以經由BeagleBone來控制zLight2的燈光變化,
但是, 它無法使用 UART 來 Debug.
2. 使用 SampleLight-EB-router 這一個編譯的模式,將程式放到 SmartRF05eb+cc2530,
是可以從 UART 輸出 debug message,
但是無法經由 Timer 的 PWM 來控制 LED.

實驗:
我想使用 SmartRF05eb+cc2530 的硬體,
並且在 SmartRF05eb 上頭做了一些硬體的跳線,
修改 SampleLight-EB-router 這一個編譯模式, 來讓它可以同時輸出UART & PWM控制LED.

為了達到這個結果, 我修改了程式的某些地方:
1. 將 PWM 切到 PWM_ALT2. 目的是為了錯開 PWM & UART 的腳位
2. 在 hal_board_cfg.h 加入 #define HAL_BOARD_ZLIGHT. 目的是為了能夠執行 hwLight_UpdateLampColorHueSat(...)
3. 將 /hal/target/CC2530PMP4712/hal_timer.c 蓋掉 /hal/target/cc2530EB/hal_timer.c. 目的是為了執行 halTimer1SetChannelDuty(..)

在 Link 時, 發生了以下的 Error:
Linking
Error[e104]: Failed to fit all segments into specified ranges. Problem discovered in segment XDATA_N. Unable to place 2 block(s) (0xc02 byte(s) total) in
0xbc2 byte(s) of memory. The problem occurred while processing the segment placement command
"-P(XDATA)XDATA_N=_XDATA_START-_XDATA_END", where at the moment of placement the available memory ranges were "XDATA:133e-1eff"
Error while running Linker

Total number of errors: 1
Total number of warnings: 0

既使參考網路上的方法 - 更改 INT_HEAP_LEN 的設定, 依然發生相同的錯誤.

請問各位大哥: 如何解決? 或是有其他的方法可以使用PWM控制LED & 同時使用 SmartRF05eb 的 UART 來 debug 呢?

感謝各位先進撥空看完這麼長的問題.

不要拿文件直接覆盖,你把跟定时器相关的函数去替换/hal/target/cc2530EB/hal_timer.c

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top