26 TOPS,最低功耗26W在RK3568/3588平台使用体验

在Neardi 3568/3588上面如何使用Hailo-8算力棒

  1. 接入Hailo-8算力棒在如下位置:
  2. 板子里的固件是2023/10/及以后的版本, 拷贝ak_rockit.tar.gz到板子上面并解压, 内如如下:

在运行demo之前, 请给Hailo-8添加一个散热片, 如下:

打开Ubuntu terminal, 运行demo:

neardi@LPA3588:~/work/ak_rockit$ ./run_demo.sh

此demo是对16路1080P@fps30 H265视频流进行分析, 成功有如下画面:

### 让CPU进入低功耗模式的C语言实现 对于不同架构的处理器,进入低功耗模式的方法有所不同。以下是针对几种常见处理器平台的具体实现方式。 #### MSP430 单片机 在MSP430系列单片机中,可以通过设置状态寄存器中的相应位来切换到不同的低功耗模式: ```c #include <msp430.h> void enterLowPowerMode(void){ __bis_SR_register(LPM0_bits); // 进入LPM0模式[^1] } ``` 这段代码展示了如何利用`__bis_SR_register()`宏操作状态寄存器SR,从而使得MCU进入到指定级别的低功耗模式,在此例子中为低级别的休眠模式LPM0。 #### RK3568 ARM Cortex-A 架构 RK3568是一款基于ARM架构的应用处理器,其内核支持动态电压频率调整(DVFS),可通过修改内核配置文件并编译Linux内核的方式开启DVFS特性: ```bash make menuconfig # 导航至 "CPU Power Management -> CPU Frequency scaling" # 选择合适的默认策略作为"Default CPUFreq governor"[^2] ``` 然而,如果希望直接通过应用程序控制,则可以借助sysfs接口编写简单的C程序改变当前运行频率: ```c #define PATH "/sys/devices/system/cpu/cpufreq/policy0/scaling_governor" int set_cpu_freq(char *governor){ FILE *fp; fp = fopen(PATH, "w"); if (fp == NULL) { perror("fopen failed"); return -1; } fprintf(fp,"%s", governor); fclose(fp); return 0; } ``` 上述函数允许开发者设定特定的调频算法(governors), 如performance、powersave等,间接达到节能效果。 #### STM8/STM32 系列微控制器 以ST公司的STM8为例,要使能WFI指令(等待中断),可以在主循环里加入如下语句: ```c #include "stm8s.h" while(1){ __asm__("wfi"); // 执行WFI指令[^4] } ``` 当执行这条汇编命令后,直到有一个外部事件触发相应的IRQ线之前,MCU都将保持在一个非常低能耗的状态下静止不动;一旦接收到有效信号便会立即恢复正常的运作流程。 #### 51单片机 对于经典的8051兼容型单片机而言,同样存在类似的机制用于节省电力资源: ```c void main(){ PCON |= 0x01; // 设置PCON.PD=1启动掉电模式[^5] while(TRUE){ // 死循环防止后续代码被执行 ; } } ``` 这里通过对特殊功能寄存器PCON的操作实现了基础形式之一——掉电模式(Power Down Mode) 的激活过程。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值