OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 43600|回复: 44

【原创】 一个STM32驱动CH376的简单程序,寄存器版本!

[复制链接]

102

主题

318

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
1876
金钱
1876
注册时间
2011-12-21
在线时间
545 小时
发表于 2012-5-20 10:04:34 | 显示全部楼层 |阅读模式
最近在用STM32 ,网上找到的资料都是库函数的,花了一段时间的工夫写了一个寄存器版本的。
型号103VE。初始化成功,读取U盘信息和容量,创建TXT文件往里面写一句话。希望对大家有用,多多交流。

CH376_1.rar

337.95 KB, 下载次数: 6018

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2019-3-7
在线时间
15 小时
发表于 2019-4-12 15:01:16 | 显示全部楼层
请问操作过程是不是把U盘插在CH376上,然后连接STM32,编译之后再把U盘插在电脑上看,会有一个新建的TXT文件?
回复 支持 1 反对 0

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-5-20 10:31:20 | 显示全部楼层
谢谢分享.
回复 支持 1 反对 0

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2201
金钱
2201
注册时间
2012-2-8
在线时间
35 小时
发表于 2012-5-20 11:16:13 | 显示全部楼层
印象中这玩意儿挺贵的,所以一直都没买来玩,喜欢直接用SD卡多点
https://github.com/roxma
回复 支持 反对

使用道具 举报

102

主题

318

帖子

2

精华

金牌会员

Rank: 6Rank: 6

积分
1876
金钱
1876
注册时间
2011-12-21
在线时间
545 小时
 楼主| 发表于 2012-5-20 19:01:26 | 显示全部楼层
回复【3楼】Pony279:
---------------------------------
时间有点紧张,要往U盘里写TXT 没时间学FAT文件系统了,呵呵
回复 支持 反对

使用道具 举报

12

主题

216

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2011-4-7
在线时间
3 小时
发表于 2012-5-26 17:27:04 | 显示全部楼层
收下
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2013-1-18
在线时间
0 小时
发表于 2013-1-18 11:46:37 | 显示全部楼层
感谢楼主....

回复 支持 反对

使用道具 举报

10

主题

49

帖子

0

精华

初级会员

Rank: 2

积分
113
金钱
113
注册时间
2012-2-21
在线时间
1 小时
发表于 2013-1-18 12:07:08 | 显示全部楼层
谢谢了
回复 支持 反对

使用道具 举报

37

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
421
金钱
421
注册时间
2013-6-4
在线时间
14 小时
发表于 2013-6-4 11:26:14 | 显示全部楼层
MINI开发板亲测不可用。。。
回复 支持 反对

使用道具 举报

37

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
421
金钱
421
注册时间
2013-6-4
在线时间
14 小时
发表于 2013-6-13 09:49:58 | 显示全部楼层
回复【8楼】bht890811:
---------------------------------
不好意思,可用,我没调好电路,失误哈。
回复 支持 反对

使用道具 举报

16

主题

77

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2013-6-14
在线时间
8 小时
发表于 2014-1-6 18:03:36 | 显示全部楼层
回复【9楼】bht890811:
---------------------------------
电路怎么连线的 我也怀疑是我线路连错了
回复 支持 反对

使用道具 举报

16

主题

77

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2013-6-14
在线时间
8 小时
发表于 2014-1-6 18:03:53 | 显示全部楼层
请问电路怎么连线的
回复 支持 反对

使用道具 举报

37

主题

140

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
421
金钱
421
注册时间
2013-6-4
在线时间
14 小时
发表于 2014-1-8 20:03:28 | 显示全部楼层
回复【11楼】s1q23:
---------------------------------
电路连PA口的SPI口就行电源接5V,按照程序的驱动连接就行了
回复 支持 反对

使用道具 举报

头像被屏蔽

38

主题

382

帖子

0

精华

高级会员

Rank: 4

积分
596
金钱
596
注册时间
2012-12-5
在线时间
19 小时
发表于 2014-1-8 23:40:02 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

11

主题

193

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
425
金钱
425
注册时间
2013-3-19
在线时间
20 小时
发表于 2014-2-23 14:48:42 | 显示全部楼层

为什么会出现这种错误啊???
回复 支持 反对

使用道具 举报

11

主题

193

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
425
金钱
425
注册时间
2013-3-19
在线时间
20 小时
发表于 2014-2-23 14:51:29 | 显示全部楼层
回复【2楼】正点原子:
------------------------------D:\Keil\ARM\Inc\ST\STM32F10x\stm32f10x_type.h(55): error:  #40: expected an identifier
D:\Keil\ARM\Inc\ST\STM32F10x\stm32f10x_type.h(55): error:  #40: expected an identifier
compiling SPI_Init.C...
D:\Keil\ARM\Inc\ST\STM32F10x\stm32f10x_type.h(55): error:  #40: expected an identifier
D:\Keil\ARM\Inc\ST\STM32F10x\stm32f10x_type.h(55): error:  #40: expected an identifier
出现这种错误是咋修改啊?
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-2-23 16:06:07 | 显示全部楼层
回复【15楼】精神不死6530:
---------------------------------
双击,看看55行是什么问题?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

11

主题

193

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
425
金钱
425
注册时间
2013-3-19
在线时间
20 小时
发表于 2014-2-23 16:59:06 | 显示全部楼层
回复【16楼】正点原子:
---------------------------------
第55行就是这:typedef enum {FALSE = 0, TRUE = !FALSE} bool;我把stm32f10x_type.h(55)换成战舰上的那个也是这个错误,我用的MDK4.7的,换成低一点的版本也不行。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-2-23 20:18:39 | 显示全部楼层
上传工程看看,我编译没这个问题
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

16

主题

77

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2013-6-14
在线时间
8 小时
发表于 2014-2-24 14:11:50 | 显示全部楼层
..\SYSTEM\sys.c(1): error:  #5: cannot open source input file "stm32f10x_lib.h": No such file or directory
这是什么错误
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-2-24 23:20:10 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

11

主题

193

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
425
金钱
425
注册时间
2013-3-19
在线时间
20 小时
发表于 2014-2-28 12:38:25 | 显示全部楼层
回复【18楼】正点原子:
---------------------------------
我下载的就是楼主的这个工程,一编译就会出现那样的问题,我又换成MDK4.22的还是老样子,把那个头文件替换还是不行的。
回复 支持 反对

使用道具 举报

11

主题

193

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
425
金钱
425
注册时间
2013-3-19
在线时间
20 小时
发表于 2014-2-28 12:38:44 | 显示全部楼层
回复【19楼】s1q23:
---------------------------------
你的能用吗???
回复 支持 反对

使用道具 举报

13

主题

314

帖子

0

精华

高级会员

Rank: 4

积分
713
金钱
713
注册时间
2012-7-20
在线时间
102 小时
发表于 2014-2-28 14:08:42 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

16

主题

77

帖子

0

精华

初级会员

Rank: 2

积分
166
金钱
166
注册时间
2013-6-14
在线时间
8 小时
发表于 2014-2-28 22:32:46 | 显示全部楼层
回复【22楼】精神不死6530:
---------------------------------
弄好了,但现在弄SD卡又出现问题了
回复 支持 反对

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
26
金钱
26
注册时间
2014-7-19
在线时间
0 小时
发表于 2014-7-19 15:47:08 | 显示全部楼层
请教 我用上面的这个程序,只能写入第一个字符
回复 支持 反对

使用道具 举报

0

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
233
金钱
233
注册时间
2014-6-5
在线时间
37 小时
发表于 2014-11-2 20:21:36 | 显示全部楼层
参考楼主的代码,使用最小系统在RBT6的芯片上使用S
[mw_shl_code=c,true]void SPIx_Init(void) { SPI_InitTypeDef SPI_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOC | RCC_APB2Periph_SPI1,ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7; // MISO MOSI SCK 初始化 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //复用推挽 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; // NSS 初始化 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 ; // RST 初始化 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOC, &GPIO_InitStructure); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 ; // INT 初始化 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;     //内部配置上拉 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB, &GPIO_InitStructure);     SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; SPI_InitStructure.SPI_Mode = SPI_Mode_Master; SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b; SPI_InitStructure.SPI_CPOL = SPI_CPOL_High; SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge; SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; //NSS 软件控制 SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_256; SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; SPI_InitStructure.SPI_CRCPolynomial = 7; SPI_Init(SPI1, &SPI_InitStructure); SPI_Cmd(SPI1, ENABLE); } [/mw_shl_code]

PI1测试可以!谢谢分享!不过按照站长的SPI2的模板代码修改成了SPI1的库函数版本。
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
50
金钱
50
注册时间
2014-10-17
在线时间
8 小时
发表于 2014-12-30 11:25:15 | 显示全部楼层
我的程序SPI好用,但是返回数据总是不对,怎么检查CH376的好坏?
回复 支持 反对

使用道具 举报

0

主题

13

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2013-8-24
在线时间
2 小时
发表于 2014-12-30 21:00:09 | 显示全部楼层
谢谢分享  。。。
回复 支持 反对

使用道具 举报

1

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
87
金钱
87
注册时间
2014-12-1
在线时间
12 小时
发表于 2016-3-19 09:47:56 | 显示全部楼层
zhanghan4310 发表于 2014-11-2 20:21
参考楼主的代码,使用最小系统在RBT6的芯片上使用S

[mw_shl_code=c,true]void SPIx_Init(void)

我用的mini板,芯片也是RBT6,和CH376连接的程序怎么也弄不好,一直返回的是0XFA,能不能分享一下你的完整程序,万分感谢
回复 支持 反对

使用道具 举报

6

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2016-4-3
在线时间
16 小时
发表于 2016-4-6 13:50:17 | 显示全部楼层
wanghlady 发表于 2014-12-30 11:25
我的程序SPI好用,但是返回数据总是不对,怎么检查CH376的好坏?

我也用的SPI 可是测的没反应   是什么原因
回复 支持 反对

使用道具 举报

6

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2016-4-3
在线时间
16 小时
发表于 2016-4-6 13:50:46 | 显示全部楼层
乐在其中 发表于 2016-3-19 09:47
我用的mini板,芯片也是RBT6,和CH376连接的程序怎么也弄不好,一直返回的是0XFA,能不能分享一下你的完 ...

你的做出来了吗 ?、我也在做这个
回复 支持 反对

使用道具 举报

6

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2016-4-3
在线时间
16 小时
发表于 2016-4-6 13:51:37 | 显示全部楼层
wanghlady 发表于 2014-12-30 11:25
我的程序SPI好用,但是返回数据总是不对,怎么检查CH376的好坏?

在吗??我用的也是SPI  也遇到问题了  可以讨论一下吗?? QQ994099840
回复 支持 反对

使用道具 举报

0

主题

52

帖子

0

精华

初级会员

Rank: 2

积分
83
金钱
83
注册时间
2013-5-30
在线时间
3 小时
发表于 2016-6-5 10:16:47 | 显示全部楼层
学习一下!
做自己喜欢做的的事,爱自己所爱的人!
回复 支持 反对

使用道具 举报

11

主题

81

帖子

0

精华

高级会员

Rank: 4

积分
652
金钱
652
注册时间
2012-8-1
在线时间
68 小时
发表于 2016-10-12 13:21:23 | 显示全部楼层
谢谢分享经验
回复 支持 反对

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2016-11-28
在线时间
6 小时
发表于 2016-11-30 21:48:13 | 显示全部楼层
,已收下,谢谢
回复 支持 反对

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2016-11-28
在线时间
6 小时
发表于 2016-12-1 15:16:23 | 显示全部楼层
我用的是,MDK5版本,STM32F103ZET6的板子,这个可以替换为STM32F103ZE的么,还有就是有报错#include <stm32f10x_lib.h>没有找到这个头文件,有尝试上面链接的方法但是错误更多了,
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2018-10-14
在线时间
0 小时
发表于 2018-10-14 20:41:45 | 显示全部楼层
张凯-123 发表于 2016-4-6 13:50
你的做出来了吗 ?、我也在做这个

我也是这个样子,你的问题解决了吗
回复 支持 反对

使用道具 举报

0

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
317
金钱
317
注册时间
2018-3-21
在线时间
45 小时
发表于 2018-10-18 12:11:50 | 显示全部楼层
MARK,感谢分享
回复 支持 反对

使用道具 举报

7

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2019-3-7
在线时间
15 小时
发表于 2019-4-12 10:16:05 | 显示全部楼层
bht890811 发表于 2013-6-13 09:49
回复【8楼】bht890811:
---------------------------------
不好意思,可用,我没调好电路,失误哈。

请问mini开发板电路是怎么连接的?
回复 支持 反对

使用道具 举报

7

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2019-3-7
在线时间
15 小时
发表于 2019-4-12 11:01:59 | 显示全部楼层
bht890811 发表于 2014-1-8 20:03
回复【11楼】s1q23:
---------------------------------
电路连PA口的SPI口就行电源接5V,按照程序的驱动连 ...

请问PC5连接RST,对应CH376的哪个引脚?
回复 支持 反对

使用道具 举报

7

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
69
金钱
69
注册时间
2019-3-7
在线时间
15 小时
发表于 2019-4-15 09:38:37 | 显示全部楼层

请问电路怎么连接?为什么我的U盘插在电脑上后没有新建的TXT文件呢?
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2020-6-9
在线时间
8 小时
发表于 2020-6-13 12:13:57 | 显示全部楼层
CH376的板子上没有SCK SDI SD0 以及RST引脚接口该怎么办
还有D0-D7都应该接哪里啊
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2020-12-7
在线时间
2 小时
发表于 2020-12-7 10:24:37 | 显示全部楼层
stm驱动ch376
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2020-12-7
在线时间
2 小时
发表于 2020-12-7 10:56:41 | 显示全部楼层
精神不死6530 发表于 2014-2-23 14:48
为什么会出现这种错误啊???

我也是这个问题,一直解决不了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-23 11:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表