社区首页
技术讨论创新帖
全部新帖
资料区
社区活动
联系管理员
★ 社区积分制度
★ 新手必读
★ 申请版主★
请
登录
后使用快捷导航
没有帐号?
注册
首页
|
电子技术
|
嵌入式
模拟电子
单片机
电源管理
传感器
半导体
电子应用
|
工业控制
物联网
汽车电子
网络通信
医疗电子
手机便携
测试测量
安防电子
家用电子
机器人
新能源
电子头条
|
社区
|
论坛
测评
博客
大学堂
|
下载
|
下载中心
电路图
精品文集
电路图
|
参考设计
|
Datasheet
|
活动
|
直播
datasheet
datasheet
文章
搜索
登录
注册
中文
En
论坛
切换旧版
电子工程世界-论坛
»
论坛
›
电子技术交流
›
国产芯片交流
›
全志R128 SDK HAL 模块开发指南——GPIO
返回列表
发新帖
回复
阅
559
|
回
0
aleksib
当前离线
纯净的硅(中级)
最后登录
2025-1-6
在线时间
40 小时
威望
998分
芯积分
511分
(兑换)
E金币
0枚
(兑换)
(兑换)
好友
0
aleksib
287
帖子
0
TA的资源
纯净的硅(中级)
+ 好友
私信
楼主
发表于2024-3-28 09:52
只看该作者
全志R128 SDK HAL 模块开发指南——GPIO
[复制链接]
# GPIO ## 模块介绍 整个 GPIO 控制器由数字部分(GPIO 和外设接口)以及 IO 模拟部分(输出缓冲,双下拉,引脚Pad)组成。其中数字部分的输出可以通过 MUX 开关选择,模拟部分可以用来配置上下拉,驱动能力以及引脚输出电压等等。具体的规格如下: - 可以在软件上配置各个引脚的状态 - 每个引脚都可以触发中断 - 可以配置 上拉/下拉/无上下拉 三种状态 - 每个引脚都可以配置 4 种驱动能力 - 可以配置边缘中断触发 - 最高 99 个中断 ## 模块配置 其 menuconfig 的配置如下: ``` Kernel Setup ---> Drivers Setup ---> SoC HAL Drivers ---> GPIO devices ---> [*] enable GPIO driver [*] enbale GPIO hal APIs Test command ``` ## 源码结构 GPIO 模块源码结构如下所示: ``` rtos-hal/source/gpio/ │-- gpio.h # 模块内部公共头文件 │-- hal_gpio.c # 公共操作接口 ├─sun20iw2 # sun20iw2 平台的实现 │---- gpio-sun20iw2.c# GPIO具体实现 │---- platform-gpio.h# 实现头文件 include/hal/ # 驱动APIs声明头文件 └── hal_gpio.h ``` - `platform-gpio.h` 主要包含 GPIO 控制器基地址、GPIO 中断号、pin 的声明等信息 - `gpio-sun20iw2.c` 主要包含每个平台的 GPIO 描述符配置 ## 模块接口说明 ### 数据结构 由于 GPIO 需要配置每个引脚的引脚复用功能,中断类型,驱动能力,上下拉,输出/输入数据,输入/输出方向等等,所以对 GPIO 的这些配置都封装在一个 enum 枚举结构里面,方便使用。下面是一些配置的定义。想要了解更多的可以到 hal_gpio.h 查看 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/8ae331170f6c4379902b149a47e704a4.png#pic_center) #### 引脚定义 gpio_pin_t 该枚举定义了可用的每个引脚定义,在配置引脚的时候将相关参数传入则可,具体定义如下: ```c typedef enum { GPIO_PC0 = GPIOC(0), GPIO_PC1 = GPIOC(1), GPIO_PC2 = GPIOC(2), GPIO_PC3 = GPIOC(3), ... GPIO_PL0 = GPIOL(0), GPIO_PL1 = GPIOL(1), GPIO_PL2 = GPIOL(2), GPIO_PL3 = GPIOL(3), GPIO_PL4 = GPIOL(4), GPIO_PL5 = GPIOL(5), } gpio_pin_t; ``` #### 引脚驱动能力 gpio_driving_level_t 该枚举定义了引脚的驱动能力的值,具体定义如下: ```c typedef enum { GPIO_DRIVING_LEVEL0 = 0, /**< Defines GPIO driving current as level0. */ GPIO_DRIVING_LEVEL1 = 1, /**< Defines GPIO driving current as level1. */ GPIO_DRIVING_LEVEL2 = 2, /**< Defines GPIO driving current as level2. */ GPIO_DRIVING_LEVEL3 = 3/**< Defines GPIO driving current as level3. */ } gpio_driving_level_t; ``` #### 引脚上下拉 gpio_pull_status_t 该枚举定义了引脚的上下拉的值,具体定义如下: ```c typedef enum { GPIO_PULL_DOWN_DISABLED = 0, /**< Defines GPIO pull up and pull down disable.*/ GPIO_PULL_UP = 1, /**< Defines GPIO is pull up state. */ GPIO_PULL_DOWN = 2, /**< Defines GPIO is pull down state. */ } gpio_pull_status_t; ``` #### 引脚数据 gpio_data_t 该枚举定义引脚的输入输出数据,具体定义如下: ```c typedef enum { GPIO_DATA_LOW = 0, /**< GPIO data low. */ GPIO_DATA_HIGH = 1 /**< GPIO data high. */ } gpio_data_t; ``` #### 引脚电压能力 gpio_power_mode_t 该枚举定义了引脚的电压模式,可以配置成 1.8V 和 3.3V,具体定义如下 ```c typedef enum { POWER_MODE_330 = 0, POWER_MODE_180 = 1 } gpio_power_mode_t; ``` #### 中断模式 gpio_interrupt_mode_t 该枚举定义了引脚的中断模式,具体定义如下: ```c typedef enum { IRQ_TYPE_NONE = 0x00000000, IRQ_TYPE_EDGE_RISING = 0x00000001, IRQ_TYPE_EDGE_FALLING = 0x00000002, IRQ_TYPE_EDGE_BOTH = (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING), IRQ_TYPE_LEVEL_HIGH = 0x00000004, IRQ_TYPE_LEVEL_LOW = 0x00000008, } gpio_interrupt_mode_t; ``` ### GPIO 驱动初始化 函数原型: ```c int hal_gpio_init(void); ``` 参数: - 无 返回值 - true:合法 - false:非法 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/263374a70f67470b9db24521391fed65.png#pic_center) ### 判断 GPIO 的合法性 函数原型: ```c bool hal_gpio_check_valid(gpio_pin_t pin); ``` 参数: - pin:id 返回值 - true:合法 - false:非法 ### 获取指定 GPIO 的电平状态 函数原型: ```c int hal_gpio_get_data(gpio_pin_t pin, gpio_data_t *data); ``` 参数: - pin:pin id - data:存放数据的指针变量 返回值 - -1:失败 - 0:成功 ### 设置指定 GPIO 的电平状态 函数原型: ```c int hal_gpio_set_data(gpio_pin_t pin, gpio_data_t data); ``` 参数: - pin:pin id - 需设置的电平高低 返回值 - -1:失败 - 0:成功 ### 设置指定 GPIO 的 IO 模式 函数原型: ```c int hal_gpio_set_direction(gpio_pin_t pin, gpio_direction_t direction); ``` 参数: - pin:pin id - direction:需设置的 IO 模式 返回值 - -1:失败 - 0:成功 ### 获取指定 GPIO 的 IO 模式 函数原型: ```c int hal_gpio_get_direction(gpio_pin_t pin, gpio_direction_t *direction); ``` 参数: - pin:pin id - direction:存放IO的指针变量 返回值 - -1:失败 - 0:成功 ### 设置指定 GPIO 的上下拉状态 函数原型: ```c int hal_gpio_set_pull(gpio_pin_t pin, gpio_pull_status_t pull); ``` 参数: - pin:pin id - pull:需设置的上下拉状态 返回值 - -1:失败 - 0:成功 ### 获取指定 GPIO 的上下拉状态 函数原型: ```c int hal_gpio_get_pull(gpio_pin_t pin, gpio_pull_status_t *pull); ``` 参数: - pin:pin id - pull:存放上下拉状态的指针变量 返回值 - -1:失败 - 0:成功 ### 设置指定 GPIO 的驱动能力 函数原型: ```c int hal_gpio_set_driving_level(gpio_pin_t pin, gpio_driving_level_t level); ``` 参数: - pin:pin id - level:需设置的驱动能力 返回值 - -1:失败 - 0:成功 ### 获取指定 GPIO 的驱动能力 函数原型: ```c int hal_gpio_get_driving_level(gpio_pin_t pin, gpio_driving_level_t *level); ``` 参数: - pin:pin id - level:存放驱动能力的指针变量 返回值 - -1:失败 - 0:成功 ### 设置指定 GPIO 的复用功能 函数原型: ```c int hal_gpio_pinmux_set_function(gpio_pin_t pin, gpio_muxsel_t function_index); ``` 参数: - pin:pin id - function_index:需设置的复用功能 返回值 - -1:失败 - 0:成功 ### 获取指定 GPIO 的复用功能 函数原型: ```c int hal_gpio_pinmux_get_function(gpio_pin_t pin, gpio_muxsel_t *function_index); ``` 参数: - pin:pin id - function_index:需设置的复用功能的指针变量 返回值 - -1:失败 - 0:成功 ### 设置指定 GPIO 组的电压模式 函数原型: ```c int hal_gpio_sel_vol_mode(gpio_pin_t pins, gpio_power_mode_t pm_sel); ``` 参数: - pin:pin id - pm_sel:需设置的电压模式 返回值 - -1:失败 - 0:成功 ### 设置指定 GPIO 组的中断采样频率 函数原型: ```c int hal_gpio_set_debounce(gpio_pin_t pin, unsigned value); ``` 参数: - pin:pin id - value:需设置的值(bit0-clock select; bit6:4-clock pre-scale) 返回值 - -1:失败 - 0:成功 ### 获取指定 GPIO 的 IRQ 中断号 函数原型: ```c int hal_gpio_to_irq(gpio_pin_t pin, uint32_t *irq); ``` 参数: - pin:pin id - irq:存放中断号的指针变量 返回值 - -1:失败 - 0:成功 ### GPIO 中断申请 函数原型: ```c int hal_gpio_irq_request(uint32_t irq, hal_irq_handler_t hdle, unsigned long flags, void *data); ``` 参数: - irq:中断号 - hdle:中断处理函数 - flag:中断触发模式 - data:数据指针 返回值 - -1:失败 - 0:成功 ### GPIO 中断释放 函数原型: ```c int hal_gpio_irq_free(uint32_t irq); ``` 参数: - irq:中断号 返回值 - -1:失败 - 0:成功 ### 使能 GPIO 中断 函数原型: ```c int hal_gpio_irq_enable(uint32_t irq); ``` 参数: - irq:中断号 返回值 - -1:失败 - 0:成功 ### 关闭 GPIO 中断 函数原型: ```c int hal_gpio_irq_disable(uint32_t irq); ``` 参数: - irq:中断号 返回值 - -1:失败 - 0:成功 ## 模块使用范例 ```c #include
#include
#include
#include
#include
#include
#define GPIO_TEST GPIO_PA1 // 待测试的 GPIO #define GPIO_PORT_MAX (8) static int pins_number[GPIO_PORT_MAX] = { 22, /* PA pins num */ 12, /* PC pins num */ 23, /* PD pins num */ 18, /* PE pins num */ 7,/* PF pins num */ 8,/* PG pins num */ 16, /* PH pins num */ 5,/* PI pins num */ }; static void cmd_usage(void) { printf("Usage:\n" "\t hal_gpio_cmd
\n"); } enum { GPIO_CMD_SET_VOL = 0, }; static hal_irqreturn_t gpio_irq_test(void *data) { hal_log_info("fake gpio interrupt handler"); return 0; } int cmd_test_gpio(int argc, char **argv) { uint32_t irq; int ret = 0; gpio_pull_status_t pull_state; gpio_direction_t gpio_direction; gpio_data_t gpio_data; gpio_muxsel_t function_index; hal_gpio_get_pull(GPIO_TEST, &pull_state); hal_gpio_get_direction(GPIO_TEST, &gpio_direction); hal_gpio_get_data(GPIO_TEST, &gpio_data); hal_gpio_pinmux_get_function(GPIO_TEST,&function_index); hal_log_info("Original: pin: %d pull state: %d, dir: %d, data: 0x%0x, function_index: %d", GPIO_TEST, pull_state, gpio_direction, gpio_data, function_index); hal_log_info("Setting: pin: %d pull state: %d, dir: %d, data: 0x%x, function_index: %d", GPIO_TEST, GPIO_PULL_UP, GPIO_DIRECTION_OUTPUT, GPIO_DATA_HIGH, GPIO_MUXSEL_OUT); hal_gpio_set_pull(GPIO_TEST, GPIO_PULL_UP); hal_gpio_set_direction(GPIO_TEST, GPIO_DIRECTION_OUTPUT); hal_gpio_set_data(GPIO_TEST, GPIO_DATA_HIGH); hal_gpio_pinmux_set_function(GPIO_TEST,GPIO_MUXSEL_OUT); hal_gpio_get_pull(GPIO_TEST, &pull_state); hal_gpio_get_direction(GPIO_TEST, &gpio_direction); hal_gpio_get_data(GPIO_TEST, &gpio_data); hal_gpio_pinmux_get_function(GPIO_TEST,&function_index); hal_log_info("Results: pin: %d pull state: %d, dir: %d, data: 0x%0x, function_index: %d", GPIO_TEST, pull_state, gpio_direction, gpio_data, function_index); if (pull_state == GPIO_PULL_UP && gpio_direction == GPIO_DIRECTION_OUTPUT && gpio_data == GPIO_DATA_HIGH && function_index == GPIO_MUXSEL_OUT) { hal_log_info("Test hal_gpio_set_pull API success!"); hal_log_info("Test hal_gpio_set_direction API success!"); hal_log_info("Test hal_gpio_set_data API success!"); hal_log_info("Test hal_gpio_pinmux_set_function API success!"); hal_log_info("Test hal_gpio_get_pull API success!"); hal_log_info("Test hal_gpio_get_direction API success!"); hal_log_info("Test hal_gpio_get_data API success!"); hal_log_info("Test hal_gpio_pinmux_get_function API success!"); } else { hal_log_err("Test API fail"); goto failed; } ret = hal_gpio_to_irq(GPIO_TEST, &irq); if (ret < 0) { hal_log_err("gpio to irq error, irq num:%d error num: %d", irq, ret); goto failed; } else { hal_log_info("Test hal_gpio_to_irq API success!"); } ret = hal_gpio_irq_request(irq, gpio_irq_test, IRQ_TYPE_EDGE_RISING, NULL); if (ret < 0) { hal_log_err("request irq error, irq num:%d error num: %d", irq, ret); goto failed; } else { hal_log_info("Test hal_gpio_irq_request API success!"); } ret = hal_gpio_irq_enable(irq); if (ret < 0) { hal_log_err("request irq error, error num: %d", ret); goto failed; } else { hal_log_info("Test hal_gpio_irq_enable API success!"); } ret = hal_gpio_irq_disable(irq); if (ret < 0) { hal_log_err("disable irq error, irq num:%d, error num: %d", irq, ret); goto failed; } else { hal_log_info("Test hal_gpio_irq_disable API success!"); } ret = hal_gpio_irq_free(irq); if (ret < 0) { hal_log_err("free irq error, error num: %d", ret); goto failed; } else { hal_log_info("Test hal_gpio_irq_free API success!"); } hal_log_info("Test gpio hal APIs success!"); return 0; failed: hal_log_err("Test gpio hal APIs failed!"); return -1; } int cmd_test_gpio_all(int argc, char **argv) { int i = 0; int j =0; int cnt = 0; int ret = 0; uint32_t irq; gpio_pin_t pin; gpio_pull_status_t pull_state; gpio_direction_t gpio_direction; gpio_data_t gpio_data; hal_log_info("The program will test all gpio hal APIs ...\n"); for(i = 0; i < GPIO_PORT_MAX; i++) { for(j = 0; j < pins_number[i]; j++) { switch(i) { case 0: pin = GPIOA(j); break; case 1: pin = GPIOC(j); break; case 2: pin = GPIOD(j); break; case 3: pin = GPIOE(j); break; case 4: pin = GPIOF(j); break; case 5: pin = GPIOG(j); break; case 6: pin = GPIOH(j); break; case 7: pin = GPIOI(j); break; default: break; } hal_log_info("Setting: pull state: %d, dir: %d, data: 0x%x, pin: %d", GPIO_PULL_DOWN, GPIO_DIRECTION_INPUT, GPIO_DATA_LOW, pin); hal_gpio_set_pull(pin, GPIO_PULL_DOWN); hal_gpio_set_direction(pin, GPIO_DIRECTION_INPUT); hal_gpio_set_data(pin, GPIO_DATA_LOW); hal_gpio_get_pull(pin, &pull_state); hal_gpio_get_direction(pin, &gpio_direction); hal_gpio_get_data(pin, &gpio_data); hal_log_info("Results: pull state: %d, dir: %d, data: 0x%0x", pull_state, gpio_direction, gpio_data); if(pull_state != GPIO_PULL_DOWN || gpio_direction != GPIO_DIRECTION_INPUT || gpio_data != GPIO_DATA_LOW) goto failed; ret = hal_gpio_to_irq(pin, &irq); if(ret < 0) goto failed; ret = hal_gpio_irq_request(irq, gpio_irq_test, IRQ_TYPE_EDGE_FALLING, NULL); if(ret < 0) goto failed; ret = hal_gpio_irq_enable(irq); if(ret < 0) goto failed; ret = hal_gpio_irq_disable(irq); if(ret < 0) goto failed; ret = hal_gpio_irq_free(irq); if(ret < 0) goto failed; cnt++; hal_log_info("Test-%d: gpio pin %d hal success!\n", cnt, pin); } } hal_log_info("Test all gpio hal APIs success, cnt: %d!", cnt); return 0; failed: hal_log_err("Test all gpio hal APIs failed!"); return -1; } int cmd_test_gpio_cmd(int argc, char **argv) { int cmd, gpio, arg; if (argc != 4) cmd_usage(); cmd = strtol(argv[1], NULL, 0); gpio = strtol(argv[2], NULL, 0); arg = strtol(argv[3], NULL, 0); switch (cmd) { case GPIO_CMD_SET_VOL: hal_gpio_sel_vol_mode(gpio, arg); break; default: break; } return 0; } FINSH_FUNCTION_EXPORT_ALIAS(cmd_test_gpio, hal_gpio, gpio hal APIs tests); FINSH_FUNCTION_EXPORT_ALIAS(cmd_test_gpio_cmd, hal_gpio_cmd, gpio hal APIs tests with cmd); FINSH_FUNCTION_EXPORT_ALIAS(cmd_test_gpio_all, hal_gpio_all, gpio hal all APIs tests); ```
此帖出自
国产芯片交流论坛
点赞
关注
(0)
回复
分享
扫一扫,分享给好友
复制链接分享
链接复制成功,分享给好友
举报
提升卡
变色卡
千斤顶
返回列表
发新帖
回复
您需要登录后才可以回帖
登录
|
注册
发表回复
回帖后跳转到最后一页
活动
更多>>
DigiKey 应用探索站 | 无线技术盛宴第二趴
有奖直播 | ADI 超低功耗 MCU MAX326xx 系列介绍
走近 AI 重磅新品 STM32N6,解锁在 MCU 部署高性能、节能型边缘 AI!答题有好礼~还有开发板等你拿!
Microchip 直播|多相降压电源控制技术的发展与探讨 报名中!
安世半导体智能工业应用探索站,闯关赢好礼!
24年年终盘点来啦!精选强推:原创、测评、拆解、视频、资料
PI 电源小课堂:集成式半桥驱动IC BridgeSwitch 2, 助力高效永磁同步电机逆变器的设计
Microchip喊你探索dsPIC33A 芯片,70份好礼等你赢!
开源项目
更多>>
【已验证】3.5mm音频切换器-4进1出
用于隔离式 4mA 至 20mA 过程控制器的 LTC1655IN8、16 位轨至轨微功率 DAC 的典型应用
AM2G-2405DZ ±5V 2 瓦 DC/DC 转换器的典型应用
DC1746A-A,使用 LTM2881-3 隔离式 RS485/RS422 模块收发器 + 电源的演示板
【PCB】STM32最小系统
NCP51810GAN1GEVB:100V eGaN 半桥栅极驱动器评估板
LT3091MPFE 并联器件使用 IMONN 消除镇流器电阻压降的典型应用
NSI45020T1G 恒流 LED 灯串的典型应用
NCV2002SN1T1G正电容倍增器典型应用电路
OP284ESZ-REEL 运算放大器噪声电路模型的典型应用,用于确定总电路等效输入噪声电压
随便看看
向梁文锋学习
DeepSeek创始人梁文锋的采访,振聋发聩,一定要认真看完!下面是关于DeepSeek创始人梁文峰的一段采访,我看得热泪盈眶,看了好几遍仍感觉振聋发聩,久久不能平静。记者:大部分中国公司都选择既要模型又要应用,为什么DeepSeek目前选择只做研究探索?梁文锋: ...
有没有在RV1106开发板的buildroot上安装opencv-python的大佬,教我安装?
《Hello算法》5、链表的节点删除
高级FPGA工程师(军工项目方向)
压力变送器零点迁移和差压变送器零点迁移
STM32+ucos2程序编译过了,也下载到板子上,为什么灯不亮
【信号处理】:FPGA数字信号处理原理及实现
【CN0015】AD5383通道监控功能
查找数据手册?
搜索
EEWorld Datasheet 技术支持
热门标签
源代码
单片机
放大器
TI
ST
电源
分立器件
传感器
测试测量
模拟
电位计隔离器
正交相移键控
固定翼无人机
人脸识别
时间序列
远程会议
软磁材料
云计算
mcu芯片
铁耗
相关文章
更多>>
德州仪器 2024年Q4财报解析:中国市场增长亮眼,目前没有收到反垄断调查通知
在 2024 年第四季度收益电话会议上,德州仪器(TI)向外界展示了一些好消息,尤其是凸显了中国市场在其全球布局中的关键地位。 第四季度,TI 收入为 40 亿美元,环比下降 3%,比去年同期下
欧盟提议成立高级研究机构:专注于AI等战略技术以加强竞争力
据彭博社报道,欧盟将提议仿照美国政府实体建立一个高级研究项目机构,对战略技术进行投资,以此作为提高欧盟竞争力的更广泛努力的一部分。 欧盟还将呼吁为 AI 建设新的超级计算基础设施。知情人士及文件显示
传台积电报废三万片晶圆,三万片受损
晶圆代工龙头厂台积电位于南科的晶圆厂,受地震影响的机台设备移位、晶圆破损经过抢修后,供应链传出,3、 5纳米的先进制程晶圆十八厂,预计将于23日达100%复机,准备恢复正常生产,晶圆十四厂复机还没有
中国芯片出口连续14个月增长
特朗普退出巴黎协定,芯片业碳中和完了没?
汇顶科技 2024 年业绩亮眼,展现强劲发展韧性
谷歌母公司:美国AI难保证对华领先 不少方面是落后
消息称三星电子砍半晶圆代工部门 2025 年设备投资预算,陡降至 5 万亿韩元
史上最佳表现:SK 海力士 2024 年营业利润 23.5 万亿韩元
宇树发布“踢足球”机器人G1-Comp,网友:国足有救了
新帖速递
STM32和无源蜂鸣器播放声音的问题
车规级AECQ200介绍,混合铝电解电容器的选择
嵌入式教程_DSP技术_DSP实验箱操作教程:2-28 搭建轻量级WEB服务器实验
OPA847IDBVR运放器国产替代
AG32VF407测试UART
【得捷电子Follow Me第二期】第一章 收到货物的分享
请问这个红外接收头是什么型号?能用哪个型号代替?谢谢
出售全新未拆封ZYNQ 7Z020 FPGA核心板
用在锂电池供电的水表设置上的LORA模块,当有100块水表集中安装在一个楼道内时,节能
请问一下,当某个端口被设置为 RX0后,这个端口的输入输出方向还有必要设置吗
今年怎么这么难,比疫情时还难,三十了面临失业好迷茫
请教稳压管测试问题
【小华HC32F448测评】关于小华半导体的UART中断发送和PRINTF构造和重定向
【BIGTREETECH PI开发板】 HDMI输出测试
【BIGTREETECH PI开发板】+08.音频测试(zmj)
DigiKey 应用探索站 | 无线技术盛宴第二趴
当月好物、热门无线技术资源、特色活动、DigiKey在线实用工具,干货多多~
查看 »
开发板申请:拥有 AI 加持的 STM32N6570-DK 免费试用 !
申请时间:即日起-3月2日
查看 »
安世半导体智能工业应用探索站,闯关赢好礼!
点击页面内“开始探索”按钮,填写并提交表单;
请根据序号依次完成3个安世半导体智能工业应用的探索,并根据给出的资料完成共计9题(每个应用3题),答对5题以上的玩家即可获得抽奖资格;
每人仅有一次参与答题的机会,请慎重作答,活动结束后,我们将抽取30位玩家赠送礼品。
查看 »
Microchip 直播|多相降压电源控制技术的发展与探讨 报名中!
直播主题:多相降压电源控制技术的发展与探讨
直播时间:2025年2月25日(星期二)上午10:30-11:30
快来报名!
查看 »
答题赢好礼,PI电源小课堂第3期来啦!
本期内容:集成式半桥驱动IC BridgeSwitch 2, 助力高效永磁同步电机逆变器的设计
活动时间:即日起-2月28日
看视频答题即可赢取京东卡!
查看 »
本周精选下载推荐:电源管理基础Dummies
本周小编给大家带来一本超简单、超干货的电子书——《电源管理基础Dummies》!内容深入浅出,排版舒服简洁,分分钟能get到电源管理最核心的知识内容。
查看 »
关闭
站长推荐
1
/6
电子工程世界版权所有
京B2-20211791
京ICP备10001474号-1
电信业务审批[2006]字第258号函
京公网安备 11010802033920号
Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复
返回顶部
返回列表
论坛首页
版块列表
专业技术中心
TI技术论坛
ST传感器与低功耗无线技术论坛
ADI参考电路
DigiKey得捷技术专区
ADI · 世健工业技术
电子技术交流
边缘AI
嵌入式系统
单片机
国产芯片交流
电机控制
FPGA/CPLD
模拟电子
电源技术
无线连接
传感器
PCB设计
综合技术交流
下载中心专版
大学堂专版
测评中心专版
行业应用
汽车电子
机器人开发
工业自动化与控制
能源基础设施
医疗电子
消费电子
创意与实践
电子竞赛
DIY/开源硬件专区
淘e淘
创意市集
休息一下
聊聊、笑笑、闹闹
工作这点儿事
为我们提意见&公告
EEWorld颁奖专区
信息发布
最新帖子
最新帖子
最新回复
精华
消灭零回复
测评中心
活动中心
积分兑换
E金币兑换
芯积分
厂商专区
TI技术论坛
ST传感器与低功耗无线技术论坛