您尚未登录。

#2 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2024-02-05 22:55:14

@liberty
没有影响,随便搞啦!我的两颗容量不一样的颗粒贴上去都能过内存测试的(当然总容量是小的那个颗粒的两倍啦)
2_20240205-2253.jpg

#5 Re: RISC-V » 避坑指南-国产wifi蓝牙芯片W800/W801/W806的GPIO速度很慢 » 2024-01-04 02:14:17

大林 说:

我看到CSDN上有个说突破120M的速度,有没有大佬去窥探一波,讲讲思路

指个路?

#6 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2024-01-04 02:13:26

flex-A 说:

大佬威武,ch551/552的资源够用的话,是不是也能拿cy7c68013/cbm9002这种芯片弄一个下载器?

我估计可以?

#9 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2023-07-03 12:28:39

andyxu 说:

@posystorage 楼主楼主 在单独接下载器没有接32的时候 在Keil中检测下载器状态的时候 debugger settings里的 有出现RDDI-DAP Error的情况不

发个截图看看。另外 接stm32的时候能用吗?

#12 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2023-06-02 17:09:30

foticing 说:

CH552下载不了STM32的是什么情况

我这边测试是可以的 你要不看看低速下行不行

#16 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2023-04-18 11:28:46

可爱的小盆友们 说:

又一代神U出世了,fpga能模拟个USB3.0或者pcie出来吗?

这个型号的pfga没有高速接口 估计不太行

#17 Re: RISC-V » 避坑指南-国产wifi蓝牙芯片W800/W801/W806的GPIO速度很慢 » 2023-04-02 15:09:19

吴助建 说:

这丫的SDK就是个坑,很久以前就放弃了,因为厂家不愿意改。
简单的函数,就是要套好几层,搞得云里雾里的,放弃才是王道。
本来挺看好它的硬件的。

过于真实 我硬件都弄好了准备玩,结果,哎

#18 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2023-02-21 23:10:11

yijuanzhi 说:

请教一下大家,在网上淘的时候,ebaz4025和ebaz4023这两个板子,外观上一摸一样,但是内存和细节布局不太一样,这两个板子在软件上都是通用的么?

我估计差不多,这个芯片PS部分基本都是固定好的引脚编排

#19 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2022-12-03 19:19:58

hl1200aa 说:
yizolabs 说:
1847123212 说:

只能咸鱼自己找了。大概这个样子的。

https://whycan.cn/files/members/2468/20200430_154900.jpg


这个没人玩吗?

刚开始玩

这些应该都是大同小异的

#20 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-11-22 20:22:58

@815794369
振铃我觉得主要是杜邦线不好,以及接地屏蔽不完善造成的,建议不要撕开杜邦线

#21 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-11-18 01:58:22

@815794369
这么点信息不足以分析出问题在哪里,这个要抓包swd+usb才容易看出来。话说你测试了5V情况下能稳定工作吗?

#23 Re: Cortex M0/M3/M4/M7 » STM32G030F6应该和STM32G041x8是同一个晶圆,来看看ST“赠送”了些什么 » 2022-09-05 18:35:53

更新:测试了FLASH下几个功能 STM32G030没有提供PCROP/SEC代码保护功能,实际上是可以用的。
32G0x1手册提供以下配置位
1_20220905-1828.jpg
32G0x0手册提供以下阉割配置位
2_20220905-1828.jpg
测试PCROP
使用keil设置分段加载文件和再特定区域只有指令,编译后设置配置字
3_20220905-1832.jpg
调试可以看到,PCROP保护的位置读取全是0xFFFF,但是PC已经掰过来了,程序运行没任何问题
4_20220905-1832.jpg

#24 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-09-04 04:11:42

abgelehnt 说:

我感觉是不需要这么大的buffer的,楼主这么写应该是为了汇编好写  直接DPH固定了
不过这XRAM不用白不用对吧hhh

哈哈 被你发现了 就是汇编偷懒 你说得对,而且这部分代码还是之前在别的工程上用的 我直接搬过来偷懒了

#26 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-08-29 11:40:33

@EListen
时间长了 有点忘了。我看了下 是这样的
EP1缓存是串口用的缓冲,收发各使用了64字节

Main_Usb.C
UINT8X Ep1BufferO[THIS_ENDP0_SIZE] _at_ 0x0040; //端点1 OUT双缓冲区,必须是偶地址 Not Change!!!!!!
UINT8X Ep1BufferI[THIS_ENDP0_SIZE] _at_ 0x0080; //端点1 IN双缓冲区,必须是偶地址 Not Change!!!!!!

串口文件下有两个缓存,在内部的是RX缓存,64字节,在外部的是TX缓存,256字节

Uart.c
UINT8I UART_RX_Data_Buff[ENDP1_SIZE];
UINT8X UART_TX_Data_Buff[256]_at_ 0x0300;

void UART_Get_USB_Data(UINT8 Nums)负责把Ep1BufferO搬到发送fifo UART_TX_Data_Buff里面
void memcpy_TXBUFF_USBBUFF(UINT8 data_len)负责把UART_RX_Data_Buff搬到Ep1BufferI
串口这部分的buff是没混用的

EP2是PC下发DAP数据给CH552
这里的缓存是这样用的,写满了就直接+64

Main_Usb.C
        case UIS_TOKEN_OUT | 2: //endpoint 2# 端点批量下传 DAP-CMD
            if (U_TOG_OK)         // 不同步的数据包将丢弃
            {
                Ep2Oi += 64;
                UEP2_DMA_L = Ep2Oi;
            }
            break;

EP3也是同理,好了直接换缓存,这样不用一直等USB

Main_Usb.C
        if (Endp3Busy != 1 && Ep3Ii != Ep3Io)
        {
            Endp3Busy = 1;
            UEP3_T_LEN = Ep3Is[0];//Ep3Io>>6];
            UEP3_DMA_L = Ep3Io;
            
            UEP3_CTRL = UEP3_CTRL & ~MASK_UEP_T_RES | UEP_T_RES_ACK; //有数据时上传数据并应答ACK
            Ep3Io += 64;
        }

这里有FIFO缓存的使用

DAP.c
void DAP_Thread(void)
{
    UINT8I num;

    if (Ep2Oi != Ep2Oo)
    {
        PUINT8 req = &Ep2BufferO[Ep2Oo];
        PUINT8 res = &Ep3BufferI[Ep3Ii];
        Ep2Oo += 64;
   ........

        Ep3Is[0]/*(Ep3Ii>>6)]*/ = num + 1;
        Ep3Ii += 64;
    }
}

#27 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-08-28 17:22:33

@EListen
端点2和3应该是串口缓存buff,使用256字节空间做fifo的,你看下汇编部分就会发现

#28 Re: Cortex M0/M3/M4/M7 » STM32G030F6应该和STM32G041x8是同一个晶圆,来看看ST“赠送”了些什么 » 2022-08-28 03:53:04

echo 说:

@zhjerry
AT32F421C8T7和AT32F425C8T7都是好芯片,比STM32那些低端型号好得多。

AT32这几颗确实还是不错的。CM4要比CM0香不少,不得不说

#29 Re: Cortex M0/M3/M4/M7 » 让 CMSIS-DAP DAPLink 功能和性能上升到新高度 » 2022-08-26 16:19:50

@llinjupt
这个pwlink我觉得最好的是自己重新写个v2的程序进去,他的硬件是足够杠杠的。但是上位机我不太喜欢 还要限制5个厂家什么什么的一堆。而且速度是真的慢
最扯的是串口,115200数据量大一点都丢包,ch552做的都不会丢,说出去丢死人

#31 Re: RISC-V » 避坑指南-国产wifi蓝牙芯片W800/W801/W806的GPIO速度很慢 » 2022-08-25 18:34:33

A77 说:

W801 当时想用SPI+DMA想提高刷新速度,实在是文档太少,遇到好多问题,最后也不了了之。。。

这个芯片不是说SPI速度只有20M么 好像也快不到哪里

#32 Cortex M0/M3/M4/M7 » STM32G030F6应该和STM32G041x8是同一个晶圆,来看看ST“赠送”了些什么 » 2022-08-25 13:28:30

posystorage
回复: 10

从STM32F103系列开始就知道ST其实就开了2-3款版图,然后靠打标搞出一大堆型号,而且ST不喜欢屏蔽手册上没标的功能,而且放在那里。不想国内产商(比如GD32)屏蔽的就很死,手册写的是什么,多的一点都没有
比如STM32F101实际上是有USB的,前两年淘宝好多廉价st-link-v2就是用这款芯片做,当然现在都有国产二进制替代芯片做了
比如STM32F103C8标称64K容量,实际上有128K的flash。
比如STM32F030F4标称16K容量,实际上有32K的flash。
比如STM32F405实际上是有网络控制器的。
这些应该是为大家所知的“秘密”了吧

最近工程上用到了STM32G030F6这个芯片,这玩意淘宝上就卖2.6一片,批量还能便宜,又回到了ST很有性价比的时代。
不得不说,STM32G系列牙膏挤出一大管,好多外设功能和设计理念都焕然一新,开发手段也焕然一新。反观国内厂家还在处于抄F103(2007年的古董)和F407系列都抄一大堆bug的阶段,外设功能还不如F1系列的阶段。。。。

先来看flash容量,手上用的STM32G030F6P6,标称32K,看同一个系列这不是有64K的型号,直接用jlink烧录64K的数据进去,读取校验没问题
4_20220825-1257.jpg
√多赠送32K flash 买一送一加量不加价

测试SRAM容量,标称8K,用MDK在调试界面的memory窗口直接看0x2000_1FF0位置,可以看到 很明显没有赠送,超过8K的部分读取错误了
5_20220825-1301.jpg
×没有多送SRAM

超频测试,标称64MHz STM32G0系列的PLL功能非常强化,可以很方便用内部HSI直接超
实测在flash运行的代码,设置等待WS=2,可以跑到130MHz,再高到132/133MHz就不稳了
SRAM运行下没测,回头有空再看看
√可以翻倍超频(不推荐超频用 或者说超也别超那么多,超到个70~90MHz差不多得了)

对比STM32G030和STM32G041的结构框图
STM32G030
2_20220825-1255.jpg
STM32G041
3_20220825-1255.jpg
可以看到,阉割了以下组件:
AES加密,RNG随机数发生器,TIM2 32位定时器,LPTIMER1/2低功耗定时器,LPUART低功耗串口
那我就一起测测能送多少
直接用CubeMX生产代码来测,选择型号STM32G041F6
把030手册上“噶”掉的功能都勾上,手册上有的就不测了
6_20220825-1307.jpg
7_20220825-1307.jpg

泥腿子上路 HAL搭配寄存器操作乱搞一通,测试结果

RNG生成的随机数可以通过LPUART1发送出来,波特率115200
TIM2生成的PWM映射到PB6,可以测到
LPTIM1可以在调试界面看到计数器在增长

8_20220825-1322.jpg
9_20220825-1322.jpg
√赠送 RNG随机数发生器,TIM2 32位定时器,LPTIMER1/2低功耗定时器,LPUART低功耗串口

目前遇到的问题,AES好像不工作,这些寄存器写入后都是0
调用hal的加密函数,返回超时
10_20220825-1323.jpg
但是可以看到AHB的AES时钟使能寄存器是可以置位的,说明这个外设应该是存在的
11.jpg
也有可能我哪里没用对,回头排查下
×可能没送AES


STMG030F6P6就2块多
不带AES的STM32G031要4块多
带AES的STM32G041看见卖18(应该不是实价,但是也不便宜就是了)
总结:送的真多,牙膏挤出一大管,我还想要

#34 感芯科技 » 弄了一个民间版本的MC3172寄存器参考手册,目前完成GPIO部分,持续更新。。 » 2022-08-17 18:16:20

posystorage
回复: 6

起因,看官方代码的宏定义实在是太费劲。恕本人愚钝,没有注释,研究了两天代码,在板子上对照着实验各个寄存器,终于搞明白大概是个啥。
为了防止过几天自己忘记了,也可以给后来者作为参考,所以写了一个民间版本的参考手册,参考STM32的Reference manual改造而来。
会持续更新,研究明白一部分更新一部分。

目前部分内容截图:
2_20220817-1814.jpg
3_20220817-1814.jpg
4_20220817-1814.jpg
5_20220817-1814.jpg
6_20220817-1814.jpg
7_20220817-1814.jpg
免责申明:
这个手册为民间爱好者根据感芯科技官方资料、代码和互联网上各爱好者讨论结果整理而来,仅用于程序开发辅助参考作用,手册中若存在冲突内容请以官方资料、官方解释为准。本手册不可替代官方手册,不代表官方,不保证准确性和实时性,参考本手册的造成的任何问题和不良后果由使用者自担。

直接用腾讯文档编写的,目前开启了所有人可以查看的权限,如果有感兴趣的有志参与者,请联系我,可以给设置编辑权限,大家一起完善,毕竟一个人写工作量还是非常大的。

完整版本直接移步:【腾讯文档】MC3172 民间参考手册
https://docs.qq.com/doc/DREJmcnpDQWVFcnhw
另外 麻烦官方大佬和游乐场大佬帮忙审阅下现在写的有没有问题。
如果官方觉得不妥的话可以联系我取消文档共享。

#36 Re: 全志 SOC » 串口屏调试板4.9包邮 速速去抢! » 2022-08-11 00:56:57

hameyou 说:

14.9元,为了吸引眼球的

你要说他拿一款他家的低端的或者热销的串口屏打广告促销,4.9/9.9/19.9 这种促销让利吸引工程师去学习开发,那还有意思。
一个破ch340做的专用板子,有什么好抢购的。。。。。。淘宝的ch340小板子都卷到2块钱包邮了,就你稀奇
靠这种没诚意的方式 就算白送 以为也能吸引人去用他的串口屏??????

#37 Re: 硬件设计 KiCAD/Protel/DXP/PADS/ORCAD/EAGLE » 晶兴串口屏调试板4.9包邮,速速去抢~ » 2022-08-11 00:55:38

你要说你那一款你家的低端的或者热销的串口屏打广告促销,4.9/9.9/19.9 这种促销让利吸引工程师去学习开发,那还有意思。
一个破ch340做的专用板子,有什么好抢购的。。。。。。淘宝的ch340小板子都卷到2块钱包邮了,就你稀奇
靠这种没诚意的方式 你就算白送 你以为也能吸引人去用你的串口屏??????

#38 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-08-11 00:51:05

xiao_fang 说:

感谢楼主分享的源码,我这几天正在学习usb,计划把它移植到CH583上,下一步使用蓝牙做一个无线的DAP。

支持你,SWD速度优化建议你重写官方原装的SWD时序代码

#39 Re: RISC-V » 避坑指南-国产wifi蓝牙芯片W800/W801/W806的GPIO速度很慢 » 2022-08-11 00:47:49

echo 说:

最简单方法就是不要用这些乱七八糟的MCU,除非对性能没有要求。

你说的对 是我大意了。国产这些芯片,吹的光鲜亮丽,实际上没一个省心

#40 Re: RISC-V » 避坑指南-国产wifi蓝牙芯片W800/W801/W806的GPIO速度很慢 » 2022-08-11 00:46:32

@xiao_fang
优化后 经过计算软IO模拟的话,12个处理器周期可以刷一个SWD时钟,3.3V下16M主频时钟1.66M,5V下24M主频时钟2M.

#41 Re: RISC-V » 避坑指南-国产wifi蓝牙芯片W800/W801/W806的GPIO速度很慢 » 2022-08-11 00:46:06

@xiao_fang
我优化过CH55x上的DAPLINK,望参考https://whycan.com/t_7786.html
这个我觉得不是ch5xx的问题(虽然ch5xx除了usb其他外设都很拉跨)
主要是原版daplink代码的swd时序部分写的很烂,而且是争对32位机的,这个优化以后其实速度挺快的

#42 RISC-V » 避坑指南-国产wifi蓝牙芯片W800/W801/W806的GPIO速度很慢 » 2022-08-10 16:43:42

posystorage
回复: 20

W80x的主频速度很高,价格也很香,用来连接彩屏,刷屏显示应该是绰绰有余,弄个带屏幕的小玩意做智能家居控制之类的应该很好玩,但是实际测试发现刷屏速度很慢。使用8BIT并口刷屏,实际测下来不如主频跑在48MHz的STM32F030F6刷屏速度快!!!遂展开细究!
测试硬件如下:
1
焊接的W801芯片,但是使用W806的裸机SDK工程测试,目的是避免W801SDK工程的RTOS和中断等功能影响测试准确性。
只测试全屏清空,屏幕分辨率为240*432,8080并口,刷屏数据为RGB565,写两次8bit为一个像素点。

经过特殊优化后的LCD刷屏核心代码和编译后汇编如下:(防喷预警:“用户自己不会用怪芯片烂”)
注意,为避免误差,优化后,每一个指令读书写GPIO寄存器!!!没有多余操作!!
一个for循环内有6个紧密相连的ST.W指令,全是单周期操作GPIO!!和一个循环跳转指令BNEZ!!相比于正常的GPIO操作,“读ld.w--改bseti/bclri--写st.w”,没有别的多余的“读--改”步骤,只有“写”步骤,从理论上杜绝是因为代码写的稀烂导致的刷屏速度慢!也方便后续速度测试
1

理论计算:以上述指令ST.W均为单周期,跳转指令BNEZ因为要清流水线视为3个周期,写一个像素算9个CPU时钟,以下简称9T。
写240*432像素需要1036800T
在主频跑240MHz情况下,显示一屏需要的时间是3.888ms,也就是可以刷257帧/秒(暂时不考虑屏幕受不受得了)
实测,以240MHz主频刷屏,写一屏耗时33.6ms,慢了一个数量级,只有30帧的速度我不能接受,肉眼可见的明显拉窗帘现象!!!实际测主频跑在48MHz的乞丐CM0芯片STM32F030F6刷屏速度都可以接近50帧!
测试将W801主频降低到80MHz,此处发现了猫腻,写一屏耗时36.4ms,只是稍微增加?
1
刷屏速度没有变慢三倍。这里发现了猫腻。应该是GPIO速度和CPU时钟速度不匹配。
因为手上逻辑分析仪性能不足以测量IO翻转速度,特意借用了10Gsps的示波器测试。
测量数据位引脚的波形:写一个像素时间位360ns,也就是9T的用时,理论上9T用时应该是41ns左右
1
测量WR引脚的波形:这两个时钟之间的间隔在汇编上就表现为:
GPIOB->DATA = gpiob_cache_clr;
8011d6a:    dda32000     st.w          r13, (r3, 0x0)
GPIOB->DATA = gpiob_cache_set;
8011d6e:    dd832000     st.w
这里很明显的发现,GPIO时钟只有20MHZ????????
20MHz开什么天才国际大玩笑的设计????!!!?这可是主频240MHz的处理器哎!!!!怎么说也得给个50MHz好吧??????
1
根据手册猜测,而且CPU在访问GPIO为啥的时候应该是AHB-AHB2-APB的路径,写入GPIO操作后类似于总线忙,CPU一直在死等,这就造成了20MHz这种情况的奇观。
1

刷个屏幕拉窗帘不能接受,为了能提速,反复阅读了写的是中文但是不知道写的是啥的手册的CLK部分,明白APB时钟居然受控于WLAN根时钟管理???莫名其妙+1

1
1
"如果希望 WLAN 系统正常工作,WLAN 根时钟需要保持在 160MHz",二级总线时钟及 APB 时钟为此时钟四分频,这里再2分频就是GPIO时钟的20MHz
将wlan根时钟从原本的480MHz/3=160MHz调整到2分频 240MHz。
1
这样GPIO的速度就上来了,有30MHz了,如图单周期执行33ns:
1
刷屏时间来到22.5ms,这个速度有40多帧,总算不拉窗帘了
1

现在问题来了:这样直接超WLAN根时钟,wifi功能肯定不能用了。
不知道官方有办法解决,或者是开放一些时钟分频的配置寄存器(国产通病,手册里遮遮掩掩,这样不提,那也不敢写,全烤用户猜),让APB和AHB2不是绑定四分之一时钟关系。
可否保留wifi功能支持的情况下,提高GPIO的速度。
主频240MHz的单片机刷个屏幕还这么拉跨说出去多丢人啊。。。
你说别人程序写的烂刷屏慢可以怪用户不会用,这问题如果官方不给出方案或者开放隐藏寄存器(如果有),换个神仙用户也优化不了哦,总不能给你一个时钟周期挤一挤变成两条操作用了吧?

#43 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-05-03 03:56:27

@Meski
Cannot Load Flash Programming Algorithm这个是你keil设置问题,和daplink没关系 这个是没有设置下载算法

#44 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-05-03 03:55:36

冷月烟 说:

大佬,这个编译的固件试了一下,串口不稳定啊,3.3V供电,115200波特率,串口接受误码很厉害

3.3V下主频只有16MHz,跑115200波特率偏差非常大的
Fsys / 16 / 波特率
波特率应该111111

#45 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-04-26 00:14:45

JZH1996 说:

大佬,我烧了你编译出来的固件,设备管理器里面能看到一个串口和一个CMSIS-DAP V2设备,但是Keil里面检测不到,想问一下是需要装专门的驱动还是对Keil版本有要求啊,我的Keil是5.23版本

keil版本太老了 识别不到v2版本的daplink 升级下keil
或者替换这个dll文件 在Keil_mdk_c51\ARM\BIN下
CMSIS_DAP.zip

#46 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-04-17 01:25:14

Meski 说:

大佬,我试着复刻了一下pcb,发现了一个矛盾的地方,readme中提示P1.6和P1.7需要并联,但是在原理图中P1.6又和P1.5通过一个0欧电阻相连,甚是疑惑,是我什么地方存在理解错误吗,希望能够得到解答,感谢。

readme 写错了 按原理图为准

#47 Re: 8051/STC8/AT89C51/N76E003 » 针对51的代码压缩方法,榨取FLASH空间浅谈 » 2022-03-21 12:24:10

crc表 查表法用const固化在flash就行了吧 没必要拷贝到ram?

#48 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-03-21 12:19:28

wh201906 说:

请问,如果用SPI的话,是需要用2线半双工模式来作为SWDIO口吗?或者用其它方法来解决双向的问题?

用的全双工SPI,将两个IO并起来用。ch552的半双工SPI有问题,速度提不到最快

#49 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-03-11 02:16:17

@gddddd
可能是因为有些是汇编代码 受影响吧?我回头有空看看

#50 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-23 13:10:43

taotieren 说:
posystorage 说:
taotieren 说:

有计划支持 rs-flash 吗?

请问这是什么东西 没听说过

https://github.com/probe-rs/cargo-flash
https://github.com/probe-rs/probe-rs

我简单看了下,有点没太看懂,这个不就是个上位机软件吗?

#51 Re: 全志 SOC » 【开源】YuzukiRuler 随身Linux小尺子 » 2022-02-22 00:49:19

挺好看的 不过好奇下这没引出io 够干什么用?

#52 Re: 8051/STC8/AT89C51/N76E003 » 给CH552编写的DAPLINK的代码能直接烧写到CH549上吗 » 2022-02-22 00:47:47

开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2)
https://whycan.com/t_7786.html
我估计稍微移植以下应该就可以
549速度更快

#53 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-22 00:46:54

taotieren 说:

有计划支持 rs-flash 吗?

请问这是什么东西 没听说过

#54 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-19 00:41:39

echo 说:

CH552性能上限太低了,而且现在也并不便宜

ch552e ssop10封装的还是很香的,在开发板上板载一个 得到串口+swd

#55 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-14 18:29:54

Lexsion 说:

大佬太强了!手里有几片多年前立创撸的CH554T,看DS说554只是比552/1多了USB Host功能,是不是也可以搞这玩意儿

可以用 都一样的

#56 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-12 22:09:55

Chin 说:

我的天,都是大佬!一套成本得多少?

不超过10元  这个芯片很便宜的(特别是涨价前)

#57 Re: Cortex M0/M3/M4/M7 » 让 CMSIS-DAP DAPLink 功能和性能上升到新高度 » 2022-02-08 01:51:05

@llinjupt
PIC一般需要高压烧录的 在小板子上还得加个升压 比较麻烦的

#58 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-08 01:47:20

llinjupt 说:

支持,CH552用于做板载调试器成本低,DAPLink的JTAG调试FPGA?这个需要上位机支持吧,还是说自己在调试器中实现FPGA的一套JTAG协议?

切换使用不就行了 usbblaster+daplink 用按键一键切换

#62 Re: Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-07 18:31:41

mousebat04 说:

大佬牛哇!简直造福人类。希望后面越来越好用。
另外问下,CH551是不是装不上这个固件?

我没做限制,大小才8K,没用串口1,应该是没问题

#63 Cortex M0/M3/M4/M7 » 开源CH551/2实现的汇编优化高速DAP-Link (CMSIS-DAP v2) » 2022-02-07 17:34:55

posystorage
回复: 74

本工作在本站大佬 @ljbfly 的工作基础上改进而来
详细见帖子:CH552 版 CMSIS-DAP v2  https://whycan.com/t_3732.html
基本大框架没有动,使用汇编优化了SWD时序,高速提供IO模拟的SWD时序,也提供一个硬件SPI的尝鲜。
完全重写C+汇编混和优化了虚拟串口部分,有效减小串口丢包,发送中断问题,提高效率
只使用v2版本的免驱动bulk模式,不兼容V1版本的hid,提供一个虚拟串口
目前空间占用,rom用了7k多,ram基本都榨干了,xram全部是缓存,iram剩余字节数也不多

开源代码、编译好的固件、PCB工程获取途径:https://github.com/posystorage/CH55x_HS_DAP-Link-v2

优化思路参考了 @metro大佬的工作,参见:
【重开旧坑】8051上的CMSIS-DAP调试器——TinyDAP开发过程记录  https://whycan.com/t_6114.html
晒一下CH558跑的CMSIS-DAP v2调试器,下载速度可以达到70KB/s(Flash)和300KB/s(SRAM) https://whycan.com/t_3766.html

和@metro大佬比起来,本人的目标是实现高速的SWD优化,暂时不打算涉猎JTAG\SWO\文件拖拽下载\兼容HID等这些功能,主要应用方向是做板载调试器(例如使用CH552E实现串口+SWD),在开发板上非常方便的调试芯片,减少接线
比如说挖坑的这个做数字锁相放大器的板子,由CH552负责通讯+SWD调试单片机+JTAG调试FPGA,全部集成。当然这坑啥时候能填完又是另说了。
QQ截图20220207165741.png
QQ截图20220207165805.png
回归正题
硬件实现 我这个板子可以选3.3V供电或者5V,我考虑的是选5V可以跑24M主频(实测32M也稳定可跑),然后IO电平用两颗1T45转换成3.3V,顺便负责SWDIO的换向,板子体积非常小。
QQ截图20220207170230.png
QQ截图20220207170216.png
如果是板载调试器的话,用3.3V供电跑16M也还是足矣,可以节约不少外围。

@ljbfly大佬编写的代码是全C实现的,由于编译器问题,SWD底层部分在频繁的搬数据,时序效果看起来占空比非常高,而且SWD输入的时候直接使用推挽读取(让我一开始非常迷惑),实测下来有的单片机如果SWD脚驱动不强的话可能兼容性不太好。
QQ图片20220207170054.png
所以整个SWD时序创建了一个汇编文件,全部用汇编优化。网上写的8051如何C和汇编混合编程,也是写的乱七八糟的,互相抄来抄去,东拼西凑。我研究了好久才让这玩意稳定工作()可能还是因为太菜了吧
QQ图片20220207170124.png
优化后 经过计算软IO模拟的话,12个处理器周期可以刷一个SWD时钟,3.3V下16M主频时钟1.66M,5V下24M主频时钟2M.
3.3V下IO模拟读取时序:
QQ图片20220207170100.png
3.3V下IO模拟写时序:
QQ图片20220207170107.png
16M主频下看起来SWD接口的占空比比较大,实际研究后,间隔时间五分之二是ch552在处理,五分之三是上位机比较慢,上位机驱动不改的话,下位机处理DAP指令还是有不少的优化空间(从xram倒腾数据过程非常多),不过考虑到我头发有限,目前就暂时不弄了。
QQ图片20220207170113.png

串口优化:原版的串口驱动只能说叫有,但是基本没什么优化,串口发送是cpu在硬等,数据量一大就丢包。目前优化后使用256字节的xram做串口发送大fifo,(这样的好处是写入写出指针用8位刚好可以,处理fifo的满和空非常简单),串口接收由于usb带宽远高于串口,所以用64字节缓存足矣,收到串口数据只要有usb端点空闲就直接丢给usb(基本上1-2个字节就会发一次),总体没什么压力。
发送大于256字节的串口数据,usb会发四次包直到缓存塞满。usb发包的时候确实会打断串口中断,以后可以优化以下用中断嵌套,使得串口优先级更高。
但是fifo的处理涉及到可能会两个中断同时访问,还需要掉些头发。
可以看到swd和串口一起工作的时候的状态,波特率干到500000
QQ图片20220207170132.png
如果没有要复杂处理的usb中断,swd是不影响串口的
QQ图片20220207170136.png
降低波特率到115200
QQ图片20220207170141.png
QQ图片20220207170146.png


硬件spi优化
使用硬件spi刷写swd部分的固定字节。8-bit的command和32bit的数据可以直接切换到spi刷
优化占比可以达到(8+32)/(8+5+32+1)≈87%
swd-successful-write.png
swd-successful-read.png
既然用了spi 就可以调速度,以5V下跑24M主频为例,swd速度可调100KHz~12MHz,当然只调节spi刷的部分,软件部分改不了的。
100K
QQ图片20220207170152.png
1M
QQ图片20220207170156.png
实际上是6M,12M逻辑分析仪抓不到了,但是也可以正常通讯。我还玩了下主频32M跑鸡血16M时钟,也没什么问题。
QQ图片20220207170201.png

开源了PCB工程文件和电路图,代码开源了软件模拟io,因为spi硬件刷新的我测下来兼容性并不是太好,有点挑MCU,有时候会莫名其妙报错,所以我回头在研究研究,就先不拿出来献丑了。提供几个编译好的固件大家可以试试。
欢迎找bug,提交改进意见~
禁止用于商业用途

#64 Re: Xilinx/Altera/FPGA/CPLD/Verilog » zynq7010/7020核心板众筹openzynq » 2022-01-22 12:36:07

arychen 说:

ZYNQ的SDK好获取吗    从来没玩过,不知道FPGA的软件部分资源是否好整

官网开发下载的,许可证网上找一个就是了

#65 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2021-12-10 10:19:14

billcheung1983 说:

楼主这个电源检测模块很漂亮!请问有没有相关资料?或者购买链接?

posystorage 说:

开机电流 5V下供电 约300ma 虽然是要12V 但是似乎5V也能愉快的跑。

https://whycan.cn/files/members/884/TIM20190331230816.jpg

搜索维简u2

#66 Re: Cortex M0/M3/M4/M7 » 求推荐单片机使用的加密算法 » 2020-12-04 17:25:04

关注一下。
我现在的做法是做个256字节的乱序换码表,简单粗暴速度快 但是确实可能没密钥方法好

#67 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2020-11-04 16:11:07

815794369 说:
posystorage 说:

搞了个FT232H的JTAG调试线
这是原作者的pcb/固件烧录等资料
https://whycan.cn/files/members/884/Xilinx_JTAG-SMT2.rar
这是我改小的SCH/PCB/BOM文件,用AD可以打开
https://whycan.cn/files/members/884/FT232H.7z
在vivado中成功识别
https://whycan.cn/files/members/884/TIM20190513110450.png
实物图 盗用群里大佬的图了
https://whycan.cn/files/members/884/TIM20190513110330.jpg
https://whycan.cn/files/members/884/TIM20190513110413.jpg
https://whycan.cn/files/members/884/TIM20190513110430.jpg
支持micro或者typec
232h封装支持lqfp或者qfn
配置芯片封装支持sop8或者sto23-6

这个玩意可以替换Jlink?还是什么?

可以用vivado 通过这个调试zynq

#68 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2020-11-01 11:09:54

狼狼 说:
posystorage 说:
狼狼 说:

我遇到了一些问题,我是新手从这块矿卡开始学习ZYNQ的,Hello World工程调试的步骤进行的很顺利,但在固化进NAND的时候,程序卡死在“initialization done, programing the memory”,我试了两块板子都是这样,还有一块可以擦除,但校验的时候显示“Blank Check Operation unsuccessful. The part is not blank.”
请问是我的矿卡坏掉了吗?
https://whycan.com/files/members/4483/QQ截图20201030105923.png

我感觉还是擦除没弄好吧?

也许是和NAND通信不正常吧...SMC时序我对着手册和网上的经验贴看、改了几遍,按说应该是不存在问题的...吧。莫不成NAND有坏块导致校验失败?后面又换了块矿卡,卡死在“Flash programming initialization failed.”这个地方了。。。我太难了2333

slc的话 我觉得不会有坏块吧

#69 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2020-11-01 11:09:07

ttyant 说:
jcfcaonima 说:

接下来,就可以用它来学习FPGA了。成本最低的FPGA开发板(20块钱)+成本最低的xilinx调试器(30.9块钱)。
https://whycan.cn/files/members/2675/2020082904.jpg

 调试器是个啥,有链接?

ft232h

#70 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2020-10-31 00:22:22

狼狼 说:

我遇到了一些问题,我是新手从这块矿卡开始学习ZYNQ的,Hello World工程调试的步骤进行的很顺利,但在固化进NAND的时候,程序卡死在“initialization done, programing the memory”,我试了两块板子都是这样,还有一块可以擦除,但校验的时候显示“Blank Check Operation unsuccessful. The part is not blank.”
请问是我的矿卡坏掉了吗?
https://whycan.com/files/members/4483/QQ截图20201030105923.png

我感觉还是擦除没弄好吧?

#72 Re: Cortex M0/M3/M4/M7 » 求助,使用IDA逆向一个stm32的程序 » 2020-10-15 17:25:29

略懂ida逆向stm32 没看懂楼主说的是啥
分别给个截图?或者私聊

#73 Re: Xilinx/Altera/FPGA/CPLD/Verilog » zynq7010/7020核心板众筹openzynq » 2020-10-13 11:55:29

chxzh123 说:

也跟风做了一个,目前正在调试中(63mm*55mm)
https://whycan.com/files/members/3710/zynq.jpg

这个板子四层做不下来吧?

#74 Re: 8051/STC8/AT89C51/N76E003 » 发个CH55x系列芯片的keil下载插件 » 2020-09-07 17:05:57

Blueskull 说:

需要新版本bootloader下载程序可以使用ch55xtool,在此:https://github.com/MarsTechHAN/ch552tool。
需要python3和pyserial。实测Ubuntu 20.04 + CH552P有效。

不错 学习了 回头有空更新下

#75 Re: 全志 SOC » X3开发板官方版本新鲜出炉,4核A7,内置128MB DDR,封装FBGA 262,16x13x1.0mm » 2020-04-12 17:24:49

卖的主要是X3芯片,那你开发板就搞到200-300价位可以接受,大家一起愉快玩耍。买到2k,啊,乖,自己玩去吧

#79 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-08-21 00:24:59

pythinker 说:
htjw 说:

现在闲鱼上没有便宜的板子了。大家都是从哪里买的?

真服了楼上的大神们, 把闲鱼矿渣买到涨价

好像现在已经不白菜了 都被大佬们包圆了

#84 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-06-19 22:53:57

longfei_3 说:

谢谢大神分享资料,刚在咸鱼40收了2块,准备拆下芯片自己做板子玩

坐等pcb,讲道理再版确实有不少局限性

#88 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-05-18 18:28:36

ybbrdfxk0922 说:

麻烦下大家,2.0 的2x10p插座什么型号?

同问啊。不过好像用2mm*2x10p的普通排母就行

#89 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-05-14 18:25:05

metro 说:
posystorage 说:

搞了个FT232H的JTAG调试线
这是原作者的pcb/固件烧录等资料
https://whycan.cn/files/members/884/Xilinx_JTAG-SMT2.rar
这是我改小的SCH/PCB/BOM文件,用AD可以打开
https://whycan.cn/files/members/884/FT232H.7z
在vivado中成功识别
https://whycan.cn/files/members/884/TIM20190513110450.png
实物图 盗用群里大佬的图了
https://whycan.cn/files/members/884/TIM20190513110330.jpg
https://whycan.cn/files/members/884/TIM20190513110413.jpg
https://whycan.cn/files/members/884/TIM20190513110430.jpg
支持micro或者typec
232h封装支持lqfp或者qfn
配置芯片封装支持sop8或者sto23-6

好评,不过好像没看到引出SRST引脚?这个引脚可以用来重置Zynq,调试的时候应该方便一些

矿渣板子上的jtag也没引出rst

#90 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-05-13 11:09:18

搞了个FT232H的JTAG调试线
这是原作者的pcb/固件烧录等资料
https://whycan.cn/files/members/884/Xilinx_JTAG-SMT2.rar
这是我改小的SCH/PCB/BOM文件,用AD可以打开
https://whycan.cn/files/members/884/FT232H.7z
在vivado中成功识别
1
实物图 盗用群里大佬的图了
1
1
1
支持micro或者typec
232h封装支持lqfp或者qfn
配置芯片封装支持sop8或者sto23-6

#91 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-26 11:33:30

yinyue01 说:

不知道和这个有没有关系?
https://whycan.cn/files/members/1608/none.png


posystorage 说:
xiaohui 说:

拍一下你板子的背面?

如图
情况是这样的:
点的亮。。不能通信
网口灯会闪
路由器能收到dhcp请求,也分了ip
但是板子那边没收。。。
应该是软件的事
https://whycan.cn/files/members/884/TIM20190424131542.jpg

这里好像不影响 正常网络或者网络不行 这里提示都一样

#92 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-24 13:19:19

xiaohui 说:
posystorage 说:
xiaohui 说:

可以尝试一下替换这一个设备数devicetree1746net.zip

已经是用新的设备树了,就是你附件这个

拍一下你板子的背面?

如图
情况是这样的:
点的亮。。不能通信
网口灯会闪
路由器能收到dhcp请求,也分了ip
但是板子那边没收。。。
应该是软件的事
1

#95 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 学习fpga的妈妈cpld » 2019-04-22 11:06:50

Jin劲 说:
posystorage 说:

这个芯片我也在玩 还是挺不错的 便宜大碗

嗯嗯 学习成本不错,就是门有点不够,想做点大东西不行。
所以我想换一个老的芯片 epm3000a系列,好像停产了,quartus ii 11不支持了。
ALTERA公司CPLD_和_FPGA_选型列表(2012年):
但是淘宝有大量的货,价格也是几块钱,门很多。
https://wenku.baidu.com/view/1db565dfc1c708a1284a44de.html
https://whycan.cn/files/members/719/WX20190422-090628.png

你要看逻辑单元数量,门数量没用。epm240是240个,3032才32个,一下下就艹爆了

#99 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-22 00:43:26

来个简单的上手教程
1、硬件改造
短接背面的二极管D24
1
修改MIO5的设置电阻---把R2584的电阻拆下来焊接到R2577的位置。
1
焊接串口和tf卡座
1
2、准备一张8G以上的tf卡-因为整个卡要被覆盖 记得备份数据
下载镜像 资料下载群:634396816
3、写tf卡
linux下用指令:
sudo dd if=./pynq_z2_v2.3.img of=/dev/sdcXXX(这里请修改成自己系统里的tf卡路径)
或者另外一个镜像:
sudo dd if=./xillinux-2.0.img of=/dev/sdcXXX(这里请修改成自己系统里的tf卡路径)
win下 下载win32diskimager 
https://sourceforge.net/projects/win32diskimager/
写入镜像后 有两个分区fat分区-很小 ext分区
吧fat分区的文件全部删掉
吧附件的压缩包解压 里面的文件全部拷贝到fat分区
https://whycan.cn/files/members/884/fat32-file.7z
4、接上串口 打开终端(我这里用putty)
一般来说可以启动成功  可以插网线 检查下网络正常不(有部分板子网络会不正常)

#100 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-21 21:05:38

晕哥 说:

直接在美国 vps 上面克隆编译更快,一般人我不告诉他

有道理啊,哪天我来玩玩试试

#101 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-21 11:02:43

yinyue01 说:

有黑金AX7010光盘的网盘链接吗,github下载太慢了

posystorage 说:

学习资料和链接
黑金家开发板的 面向歪果仁的资料
在gayhub上面https://github.com/alinxalinx/AX7010 有点大,下载下来有1.5G,用ida+挂代理来的快,不然下太久了
https://whycan.cn/files/members/884/TIM20190405162006.jpg
https://whycan.cn/files/members/884/TIM20190405162000.jpg
https://whycan.cn/files/members/884/TIM20190405161952.jpg

git下载要挂代理就非常快了

#103 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-20 10:42:20

hackerboygn 说:
hackerboygn 说:

蛋疼,手动敲一编启动命令就能进。反正调用run命令就极有可能找不到zynq-ebaz.dtb。(其他文件都可以,唯独zynq-ebaz.dtb不行,难到我的TF卡有问题???)
现在把启动脚步的环境变量简化成如下形式就可以完美进系统了

https://whycan.cn/files/members/1598/zynq3.png

是的 那个脚本有问题,可以吧zynq-ebaz.dtb改名字成devicetree.dtb

#104 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-17 13:17:21

hackerboygn 说:

请教一个,ARM部分通过JTAG下载固件到板载Flash的话,是不是只用JLink就可以实现?FPGA通过的下载需要什么工具,只能用xilinx自家的?

可以从sd卡直接启动。fpga部分的位流文件在uboot里面加载,用不着jtag

#105 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-15 00:27:02

达克罗德 说:

焊了电源线后跑起来了,38元一个真是划算呀。Vivado必须装完整版的吗?我电脑空间不足

个人认为这个矿渣是真的超值。vivado好像得老老实实安装完。小姐姐删两个就有空间了~

#106 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-13 16:29:36

smartcar 说:

不是已经有了命令提示符吗,说明已经进入系统了啊

大佬说这是initramfs  这个镜像应该是乌班图

#108 Re: 8051/STC8/AT89C51/N76E003 » 能否设置使得新唐的n76e003在低电压的时候(比如3v)自动停止工作,能否发出低电压信号,具体怎么设置 » 2019-04-12 12:39:16

法一:ADC测内部基准,然后反推出电源电压。
法二:欠压检测(BOD)
另一个电源监控功能是欠压检测电路,欠压检测电路是用于监测运行期间V DD 电平。有4个可编程的欠压
检 测 触 发 电 平 , 以 适 用 于 宽 电 压 应 用 。 4 级 电 平 2.2V, 2.7V, 3.7V 、 4.4V , 通 过 CBOV[1:0]
(CONFIG2[5:4])选择。当然在上电后也可以通过设置BOV[1:0] (BODCON0[6:4])来改变BOD电平。当
V DD 下降到所选择的欠压检测触发电平(V BOD ),欠压检测逻辑将复位MCU或请求欠压检测中断。用户可
结合不同应用决定设备是欠压复位还是产生欠压中断。上电后也可以通过软件打开V BOD ,注意 在软件打
开BOD后需要等待2到3个LIRC时钟才能正常工作

#109 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-11 20:48:12

xiaohui 说:
3DA502 说:

我这个板子已经跑起来Ubuntu了,用的是友善NAnoPi群II【复制粘贴协会会长】提供的镜像

你好,方便发现启动电阻是哪一个吗?还有怎么改?谢谢

仔细读贴,帖子前面有写

#110 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-09 19:48:26

3DA502 说:

我这个板子已经跑起来Ubuntu了,用的是友善NAnoPi群II【复制粘贴协会会长】提供的镜像

请问下该怎么弄呢?求带路

#111 Re: 华芯微特 » 松果派PineconePi ONE众筹,华芯微特 SWM320VET7,主频125MHz, 512k Flash,128k SRAM » 2019-04-09 12:34:15

yywyai 说:

SWM320VET7的RTC还不能外接晶振,虽然他宣称内部RC精度是5/10000,这个比起一般32.768K晶振10 - 20PPM的精度 和 晶振温漂还是差很大距离。外接参考电压ADC高低端都不能满量程,只能用其内部基准。这些问题都是联系过华芯威特的技术支持确认过的。

是不是忽悠这个不好说,至少我买了10片,浪费了2个多月。刚看数据手册时觉得SWM320VET7是婀娜多姿美丽动人,实际测试后就是鼻屎如花。

jlau 说:
yywyai 说:

外设DMA不能用。NORFLASH不支持手册上宣传的字节, 半字操作。LCD不支持手册上的M68 I80接口。SDIO接口引脚跟SDRAM等引脚冲突,SDRAM也支持字操作。还有些小问题,所以SWM320VET7便宜,但并不好用

这么多bug,他们老板还能拿到的投资来做这个芯片,难道忽悠能力一流

我一起买了swm180/swm320,先用了swm180,感觉和你一样。刚看数据手册时觉得是婀娜多姿美丽动人,实际测试后就是鼻屎如花+10086。
swm180他们吹爆的16位西格玛徳塔ADC,我感觉远不如stm32的12位逐次比较ADC。然后swm320就不感兴趣碰了

#115 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-06 00:05:44

metro 说:

刚刚我也试过了,Vivado可以正确识别板子,好评 wink

JTAG的定义和官方兼容,可以直接用FPGA下载线连接。

https://whycan.cn/files/members/1510/1.jpg

Vivado

https://whycan.cn/files/members/1510/2.jpg

是的,就是标准的jtag接口,这个好评

#116 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-05 16:19:01

黑金家的一些PDF教程
他那个垃圾论坛,下载很麻烦,回复可见+反人类验证码+2分钟允许发一贴+一小时允许发10贴。真的想打人
https://whycan.cn/files/members/884/AX7010.7z
1

#117 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-05 16:15:17

学习资料和链接
黑金家开发板的 面向歪果仁的资料
在gayhub上面https://github.com/alinxalinx/AX7010 有点大,下载下来有1.5G,用ida+挂代理来的快,不然下太久了
1
1
1

#122 Re: 技术人生/软件使用技巧/破解经验/技术吐槽/灌水 » 求一台优秀的激光打标机(打磨/刻字) » 2019-04-01 11:18:03

晕哥 说:

https://whycan.cn/files/members/3/QQ20190401103513.jpg








再三确认过松果派PineconePi Nano 的 MCU 是  抹掉 原字再打上去的。

stc的芯片好像有提供重新打标服务

#124 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-04-01 10:31:06

达克罗德 说:

纯围观,这对我太难了,哭

里面主要还是折腾跑linux,主线是linux,副本才是fpga

#126 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-03-31 23:49:26

在某论坛找到了原理图和PCB文件
原理图是pdf格式,pcb文件用AD可以打开 具体下载见附件
讲道理他们挺厉害的 居然能搞到这玩意
如图:
1
pcb是四层板
top和bottom走信号 中间两层电源
1
1
1
1

资料包:附件
https://whycan.cn/files/members/884/zynq.7z

上车方法:
1

#127 DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 捡了个便宜的高级ZYNQ XC7Z010 开发板玩玩 » 2019-03-31 23:38:41

posystorage
回复: 303

zynq算是xilinx家比较名气大的系列了吧?这玩意有意思在吧arm处理器和fpga做在一起搞成个soc,兼顾高速处理和应用开发?
因为fpga是可以挂在arm的总线上的,所以fpga和arm之间的通讯很快,比如有台湾固伟就用这玩意做示波器,从高速adc来的芯片直接进zynq,再挂组sdram,arm侧接用户界面,一片集成直接搞定。

作为垃圾佬,这次看见有便宜的板子(价格两位数一片),就直接剁手了。毕竟这玩意,新的似乎都是几百上千。
撸了两片
板子这样
1
正面
1
背面
1
芯片细节 zynq xc7z010 256m的ddr 128m的nand 百兆网口
1
撸开xilinx的手册看看
芯片简述
ARM侧-PS部分
1
FPGA侧-PL部分
1
芯片结构
1
确认mark的意义
1
对应的配置 PS部分-双核 ARM Cortex-A9  速度等级 最垃圾的-1 对应667mhz
1
对应的配置 PL部分-有28K可编程逻辑单元 17K的LUT
1
封装信息
1

需要补焊个二极管才能供电
1
开机电流 5V下供电 约300ma 虽然是要12V 但是似乎5V也能愉快的跑
1
板子上有个tf卡座 没焊 似乎有jtag调试口
预留有串口 上电接115200 8n1可以看到调试信息输出

上电开机很慢
要差不多快一分钟 开机完成闪红灯

部分开机信息-里面反正是跑了linux

U-Boot 2015.07 (Jun 28 2017 - 21:05:18 +0800)

Model: Zynq Zed Development Board
DRAM:  ECC disabled 256 MiB
NAND:  128 MiB
MMC:   zynq_sdhci: 0
Invalid bus 0 (err=-1)
*** Warning - spi_flash_probe() failed, using default environment

In:    serial
Out:   serial
Err:   serial
Model: Zynq Zed Development Board
Net:   Gem.e000b000
Hit 'd' to stop autoboot(eric):  3  2  1  0 
Copying Linux from NAND flash to RAM...

Device 0: nand0, sector size 128 KiB
  Page size       2048 b
  OOB size          64 b
  Erase size    131072 b
  subpagesize      512 b
  options     0x       0
  bbt options 0x   20000

NAND read: device 0 offset 0x2220000, size 0x300000
 3145728 bytes read: OK
  design filename = "top_ctrl;UserID=0XFFFFFFFF;Version=2016.4"
  part number = "7z010clg400"
  date = "2017/10/17"
  time = "09:59:49"
  bytes in bitstream = 2083740
zynq_align_dma_buffer: Align buffer at 100068 to 100000(swap 1)

NAND read: device 0 offset 0x300000, size 0x500000
 5242880 bytes read: OK

NAND read: device 0 offset 0x800000, size 0x20000
 131072 bytes read: OK
## Booting kernel from Legacy Image at 02080000 ...
   Image Name:   Linux-4.6.0-xilinx
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    3820688 Bytes = 3.6 MiB
   Load Address: 00008000
   Entry Point:  00008000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
   Booting using the fdt blob at 0x2000000
   Loading Kernel Image ... OK
   Loading Device Tree to 0f2fe000, end 0f303b90 ... OK

Starting kernel ...

Booting Linux on physical CPU 0x0
Linux version 4.6.0-xilinx (root@alvin) (gcc version 5.2.0 (GCC) ) #5 SMP PREEMPT Mon May 8 14:36:49 CST 2017
CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine model: xlnx,zynq-7000
cma: Reserved 16 MiB at 0x0e000000
Memory policy: Data cache writealloc
percpu: Embedded 12 pages/cpu @cfdce000 s19776 r8192 d21184 u49152
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024
Kernel command line: console=ttyPS0,115200 root=/dev/mtdblock6 rootfstype=jffs2 noinitrd rw rootwait
PID hash table entries: 1024 (order: 0, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 234624K/262144K available (5286K kernel code, 231K rwdata, 1848K rodata, 1024K init, 226K bss, 11136K reserved, 16384K cma-reserved, 0K highmem)
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xd0800000 - 0xff800000   ( 752 MB)
    lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
    pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    modules : 0xbf000000 - 0xbfe00000   (  14 MB)
      .text : 0xc0008000 - 0xc07f7850   (8127 kB)
      .init : 0xc0800000 - 0xc0900000   (1024 kB)
      .data : 0xc0900000 - 0xc0939e60   ( 232 kB)
       .bss : 0xc0939e60 - 0xc0972764   ( 227 kB)
Preemptible hierarchical RCU implementation.
	Build-time adjustment of leaf fanout to 32.
	RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
RCU: Adjusting geometry for rcu_fanout_leaf=32, nr_cpu_ids=2
NR_IRQS:16 nr_irqs:16 16
efuse mapped to d0800000
slcr mapped to d0802000
L2C: platform modifies aux control register: 0x72360000 -> 0x72760000
L2C: DT/platform modifies aux control register: 0x72360000 -> 0x72760000
L2C-310 erratum 769419 enabled
L2C-310 enabling early BRESP for Cortex-A9
L2C-310 full line of zeros enabled for Cortex-A9
L2C-310 ID prefetch enabled, offset 1 lines
L2C-310 dynamic clock gating enabled, standby mode enabled
L2C-310 cache controller enabled, 8 ways, 512 kB
L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76760001
zynq_clock_init: clkc starts at d0802100
Zynq clock init
sched_clock: 64 bits at 333MHz, resolution 3ns, wraps every 4398046511103ns
clocksource: arm_global_timer: mask: 0xffffffffffffffff max_cycles: 0x4ce076117e, max_idle_ns: 440795215954 ns
Switching to timer-based delay loop, resolution 3ns
clocksource: ttc_clocksource: mask: 0xffff max_cycles: 0xffff, max_idle_ns: 537538477 ns
timer #0 at d080a000, irq=17
Console: colour dummy device 80x30
Calibrating delay loop (skipped), value calculated using timer frequency.. 666.66 BogoMIPS (lpj=3333330)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x100000 - 0x100058
CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
Brought up 2 CPUs
SMP: Total of 2 processors activated (1333.33 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
cpuidle: using governor menu
hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 4 bytes.
zynq-ocm f800c000.ocmc: ZYNQ OCM pool: 256 KiB @ 0xd0880000
zynq-pinctrl 700.pinctrl: zynq pinctrl initialized
vgaarb: loaded
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
media: Linux media interface: v0.10
Linux video capture interface: v2.00
pps_core: LinuxPPS API ver. 1 registered
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
PTP clock support registered
EDAC MC: Ver: 3.0.0
Advanced Linux Sound Architecture Driver Initialized.
clocksource: Switched to clocksource arm_global_timer
NET: Registered protocol family 2
TCP established hash table entries: 2048 (order: 1, 8192 bytes)
TCP bind hash table entries: 2048 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
futex hash table entries: 512 (order: 3, 32768 bytes)
workingset: timestamp_bits=28 max_order=16 bucket_order=0
jffs2: version 2.2. (NAND) (SUMMARY)  漏 2001-2006 Red Hat, Inc.
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
dma-pl330 f8003000.dmac: Loaded driver for PL330 DMAC-241330
dma-pl330 f8003000.dmac: 	DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16
42c00000.serial: ttyUL2 at MMIO 0x42c00000 (irq = 166, base_baud = 0) is a uartlite
e0000000.serial: ttyPS1 at MMIO 0xe0000000 (irq = 144, base_baud = 3124996) is a xuartps
e0001000.serial: ttyPS0 at MMIO 0xe0001000 (irq = 145, base_baud = 3124996) is a xuartps
console [ttyPS0] enabled
xdevcfg f8007000.devcfg: ioremap 0xf8007000 to d0872000
[drm] Initialized drm 1.1.0 20060810
brd: module loaded
loop: module loaded
CAN device driver interface
gpiod_set_value: invalid GPIO
libphy: MACB_mii_bus: probed
macb e000b000.ethernet eth0: Cadence GEM rev 0x00020118 at 0xe000b000 irq 148 (00:0a:35:00:01:22)
ICPlus IP101A/G e000b000.etherne:00: attached PHY driver [ICPlus IP101A/G] (mii_bus:phy_addr=e000b000.etherne:00, irq=-1)
e1000e: Intel(R) PRO/1000 Network Driver - 3.2.6-k
e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-pci: EHCI PCI platform driver
usbcore: registered new interface driver usb-storage
mousedev: PS/2 mouse device common for all mice
i2c /dev entries driver
rtc-pcf8563 0-0051: chip found, driver version 0.4.4
rtc-pcf8563 0-0051: pcf8563_write_block_data: err=-11 addr=0e, data=03
rtc-pcf8563 0-0051: pcf8563_probe: write error
rtc-pcf8563: probe of 0-0051 failed with error -5
cdns-i2c e0004000.i2c: 400 kHz mmio e0004000 irq 141
EDAC MC: ECC not enabled
Xilinx Zynq CpuIdle Driver started
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
mmc0: SDHCI controller on e0100000.sdhci [e0100000.sdhci] using DMA
ledtrig-cpu: registered to indicate activity on CPUs
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
nand: device found, Manufacturer ID: 0xef, Chip ID: 0xf1
nand: Unknown W29N01HV
nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
Bad block table found at page 65472, version 0x01
Bad block table found at page 65408, version 0x01
nand_read_bbt: bad block at 0x000007f60000
nand_read_bbt: bad block at 0x000007f80000
nand_read_bbt: bad block at 0x000007fa0000
nand_read_bbt: bad block at 0x000007fc0000
9 ofpart partitions found on MTD device pl35x-nand
Creating 9 MTD partitions on "pl35x-nand":
0x000000000000-0x000000300000 : "nand-fsbl-uboot"
0x000000300000-0x000000800000 : "nand-linux"
0x000000800000-0x000000820000 : "nand-device-tree"
0x000000820000-0x000001220000 : "nand-rootfs"
0x000001220000-0x000002220000 : "nand-jffs2"
0x000002220000-0x000002a20000 : "nand-bitstream"
0x000002a20000-0x000006a20000 : "nand-allrootfs"
0x000006a20000-0x000007e00000 : "nand-release"
0x000007e00000-0x000008000000 : "nand-reserve"
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
can: controller area network core (rev 20120528 abi 9)
NET: Registered protocol family 29
can: raw protocol (rev 20120528)
can: broadcast manager protocol (rev 20120528 t)
can: netlink gateway (rev 20130117) max_hops=1
Registering SWP/SWPB emulation handler
hctosys: unable to open rtc device (rtc0)
ALSA device list:
  No soundcards found.
VFS: Mounted root (jffs2 filesystem) on device 31:6.
devtmpfs: mounted
Freeing unused kernel memory: 1024K (c0800000 - c0900000)
jffs2: warning: (1) jffs2_sum_write_data: Not enough space for summary, padsize = -16

INIT: version 2.88 booting

random: dd urandom read with 1 bits of entropy available
Wed Jul 21 00:51:05 UTC 2010

Starting internet superserver: inetd.

jffs2: notice: (721) check_node_data: wrong data CRC in data node at 0x03edeccc: read 0x279c67f2, calculated 0x2bbf6f3e.
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
appstartup .....

rm: can't remove '/tmp/*': No such file or directory

0

BANK0

appstartup ..... end


INIT: Entering runlevel: 5


Configuring network interfaces... done.

Starting Dropbear SSH server: dropbear.

Starting syslogd/klogd: done



PetaLinux 2016.4 zedboard-zynq7 /dev/ttyPS0

#128 Re: 8051/STC8/AT89C51/N76E003 » 发个CH55x系列芯片的keil下载插件 » 2019-03-08 15:15:27

WCH 说:

https://whycan.cn/files/members/1470/Error8.png

请问这个错误是怎么回事?

你应该是拿了新版本boot的ch55x在下载。

#130 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 这几天无事做的USB Radio » 2019-03-08 13:45:27

山无棱 说:
yywyai 说:

我的代码在HID部分还没完善。整体就和上面发的AN264SW是一样的,仅仅是对CH552 和 RDA 不同处的相应修改而已。
等做完后我再填自己挖的坑吧

那坐等开源收音机了 ^_^

话说,玩ch552的可以看看这个帖子
https://whycan.cn/t_2220.html

#132 Re: 8051/STC8/AT89C51/N76E003 » 发个CH55x系列芯片的keil下载插件 » 2019-03-07 21:46:36

jimmy 说:

大神,摩拜摩拜!
这是破解了 CH55X的isp协议,然后自己做了一个keil 插件?

是的 套了他的ISP协议

#133 Re: 8051/STC8/AT89C51/N76E003 » 发个CH55x系列芯片的keil下载插件 » 2019-03-07 21:44:56

话说,晕哥的这个站似乎是建在搬瓦工上面的?

#134 8051/STC8/AT89C51/N76E003 » 发个CH55x系列芯片的keil下载插件 » 2019-03-07 21:40:20

posystorage
回复: 27

本站首发

ch55x这个系列的芯片还是不错的,可以算是最便宜的带usb的芯片了。虽然除了usb以外,51核和外设都一般般,甚至可以说有点烂。不过价格在那里,用来做一些小下载器/协议接口转接桥之类的,小的HID设备什么的还是不错的。

鉴于这个芯片可以USB下载,不需要额外买烧录器,对普通爱好者来说可以说是相当友好了。
不过呢,下载还是需要个ISP上位机,而这波呢,我弄了个Keil的下载插件,这样就吧官方的上位机给撇了,直接在keil里面集成开发就行了。

下载在keil里面直接点这个按钮
CH55x
就可以下载CH55x系列芯片(目前仅支持CH551/CH552/CH553/CH554)(对应CH558/559因为手上没有 暂时没法抓包和测试 当然欢迎各位大佬补充)
前仅支持USB接口的官方ISP下载,不支持串口下载。Keil4/Keil5可以通用。
效果
CH55x

在建工程的时候 设置方法
CH55x
点击setting可以设置配置位,和官方上位机一样的选项,一般保持默认就可以了
CH55x


两个常见的错误提示
CH55x芯片不在bootloader状态,点击下载时会出现这个提示
CH55x
下载中报错(这种情况实际上代码写进去了,配置位没改)
这个提示的意思是,芯片进入boot的状态不是上电复位,此时是不能进行配置位更新的。如果要改写配置位,需要先断电,然后上拉D+再插USB,然后即可改写配置位信息。
CH55x



进入boot有三种方法
1、常规方法:断电->20K电阻上拉D+到VCC33->连接USB
2、方便调试方法1:添加复位按键和D+上拉按键,开启手动复位设置,程序运行中,按下复位和D+上拉按键,先松开复位
3、方便调试方法2:加复位按键,关闭手动复位设置,程序运行中,按下复位键就进boot
但是需要在代码中加入以下内容
先定义:
typedef void( *goISP)( void );
goISP ISP_ADDR=0x3800;   
程序主循环或者定时器中需要添加这段检测代码:
if(CLOCK_CFG&bRST)
{
    USB_CTRL=0;
    UDEV_CTRL=0x80;
    mDelaymS(10);           
     (ISP_ADDR)();
}


关于源码:
源码不直接公开,但是可以分享,需要的可以给我发邮件(感兴趣的 详细内容看github页面)

附件:内附详细PDF教程和编译好的插件
https://whycan.cn/files/members/884/CH55x.7z

也可以github下载
https://github.com/posystorage/CH55x-Keil-Plugin

如果大家感兴趣的话,我再开个贴发下n76e003的下载套件(包括下位机/上位机/keil插件)

#135 Re: 华芯微特 » 松果派PineconePi ONE众筹,华芯微特 SWM320VET7,主频125MHz, 512k Flash,128k SRAM » 2019-03-07 21:08:02

yywyai 说:

外设DMA不能用。NORFLASH不支持手册上宣传的字节, 半字操作。LCD不支持手册上的M68 I80接口。SDIO接口引脚跟SDRAM等引脚冲突,SDRAM也支持字操作。还有些小问题,所以SWM320VET7便宜,但并不好用

确实,感觉就是工程样品,他家的芯片一堆bug就敢拿出来卖。不敢用不敢用

#136 Re: 华芯微特 » 松果派PineconePi ONE众筹,华芯微特 SWM320VET7,主频125MHz, 512k Flash,128k SRAM » 2019-03-07 21:06:23

这样说吧,这个家的芯片 各种bug

连SWD(JTAG)下载调试接口 都有bug的 只能说说真的牛逼
用了一次就不像再碰第二次系列
利益相关:试着用过下swm180/181 手上还有几片swm320
swm181口口声声宣传的16位西格玛德尔塔adc,我tm感觉连12位都不如 swm180不提了,基准两个选项接vdd或者不接,人才

#137 Re: 8051/STC8/AT89C51/N76E003 » python N76E003 ISP 上位机程序 » 2019-03-03 18:29:56

话说我最近研究了以下。前次提到的那个下载器 已经可以在keil里面直接一键下载了

#140 Re: 8051/STC8/AT89C51/N76E003 » 新唐 N76E003 的 ISP demo, 试了一下挺不错的。 » 2019-01-06 13:29:03

我试了下,感觉操作其实比较反人类的。另外不支持hex输入,还好开源了,自己改了改加进去了hex

#141 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 第一次体验 JLC 嘉立创 SMT » 2019-01-06 13:27:23

playflash 说:

我听了论坛一兄弟建议,  做个25元的钢网, 自己手工贴,也很快。0603的阻容基本没问题,0402就有点麻烦。

同问25元的钢网哪里有做?

#143 Re: 全志 SOC » 闲鱼58元收了一台 A33 平板电脑 » 2018-11-25 16:03:46

晕哥 说:
Gentlepig 说:

平板电脑还带网口?

对,A33内置mac, 外扩了一片 9800 PHY 芯片.

话说,想问下,全志a31s有法玩么,手上有堆灰平板a31s的

#144 Re: 计算机图形/GUI/RTOS/FileSystem/OpenGL/DirectX/SDL2 » 【github项目】又发现一个轻量级开源UI nuklear,酷炫界面,支持矢量字体。 » 2018-11-14 21:53:22

晕哥 说:
演技担当黄晓明 说:
晕哥 说:

下载地址: nuklear_debugdump.7z

由于git仓库太大,比 .git 目录删除了。

工程文件是哪个?

nuklear_debugdump\demo\gdi\gdi.vcxproj
nuklear_debugdump\demo\d3d9\gdi.vcxproj
nuklear_debugdump\demo\d3d11\gdi.vcxproj

请问下这个能在stm32跑嘛?
或者说有没有推荐能在stm32上实现矢量字体的方法

#146 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 打灯笼在淘宝找到 jlink V9 mini版本, 方便出差用. » 2018-09-10 12:27:18

这玩意我自己画板做了个。可能比这个宽一点点吧?长度差不多。双排针正反面贴板焊接。线序和原装jtag线一样。不用专门转接线就能用

#148 DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/MQTT/物联网 » 拆解求助这个蓝牙手环怎么能玩起来(nrf51822+MT2502) » 2018-09-10 01:22:41

posystorage
回复: 4

37度出的蓝牙手环 应该是老一代的淘汰产品吧
因为电池严重亏电了,之前以3元一个的价钱买了3-4个
09106.png
09107.png
自己做了两个弹簧针就可以充电了
有个37度的app,注册后可以连接上手环,功能大概有记步,心跳血氧血压,睡眠之类的一堆
Screenshot_2018-09-10-00-54-57.png
Screenshot_2018-09-10-00-55-18.png
Screenshot_2018-09-10-00-56-04.png
随便玩了几天没心情就扔一边了
这两天看论坛里流行玩mtk方案的手表,就翻出来拆开也看看。
里面的一个传感器可能是高度不合适 单独做了个小版可以拆下来
09101.png
主控是MT2502
单片解决方案 ARM7EJ-S RISC processor内核
支持GSM/GPRS (2G) +蓝牙4.0+fm功能
UART, USB 1.1 FS/LS ,SDIO and SD storage systems
5.4mm×6.2mm, 143-ball, 0.4mm pitch,TFBGA package
09102.png
091011.jpg
我这款应该是4M+4M的版本吧?
091015.jpg
091016.jpg
09103.png
这边是nrf51822
低功耗蓝牙+2.4g芯片
很火的一个芯片  这封装蛋疼
09104.png
091012.jpg
旁边是ti的一个心跳血压测量芯片 两组传感器(测量是一组闪白灯 一组是绿灯)中的一组应该就是这玩意驱动
09105.png
091014.jpg
整体照
09109.png
背面一堆测试点 这个比手表良心的是 居然所有点都标注了名称
不过 似乎然并卵。左边一组sck+swd应该是烧录nrf51822的
mtk这边 比较大的点,有一组usb+一个串口
有个复位
似乎有一个spi?难道是直接连接内部的spi储存?
091010.png
供电后测试usb连电脑没反应

还有个疑问,既然mtk自身带蓝牙,还弄个51822干嘛?另外 难道这玩意运算量特别大?cm0内核的51822不能胜任?还要来个mtk来计算???

拆散尸体
09108.png
最后求大佬带带我怎么才能玩转

#149 Re: Cortex M0/M3/M4/M7 » 贴一个在stm32f1跑的裸奔usb程序 » 2018-08-25 17:26:13

因为涉及到这个boot的安全性 就不发上位机和boot的程序了。

至于usb的框架 要想玩转的话,usb的协议一定要烂熟 usb官方的pdf一定要看透了,芯片的usb寄存器那块的内容也要看熟了,才能灵活自如的用起来

#150 Re: Cortex M0/M3/M4/M7 » 贴一个在stm32f1跑的裸奔usb程序 » 2018-08-25 17:02:06

具体的内容呢 是用这usb库做了一个麻雀虽小五脏俱全的USB-bootloader
测试版的上位机这样子
QQ20180825170645.jpg
这套上位机+boot支持的功能
自动插入拔出检测
带一个设备描述的指令 可以向主机报告设备名称 可编程可读写的储存范围
boot自带可操作地址范围的控制
允许进行对非对齐操作数量 非对齐地址进行读取
对flash和SRAM均有读写(擦除)操作支持
支持擦除前查空
调整到应用编号 跳转到地址
CRC校验
由上位机实现先查同,若同在不擦写

占用资源 很小
极限优化以后
flash占用整整不多不少4K+SRAM 1K 
整个程序虽然是纯C写的 但是优化的时候一半以上的函数都看过汇编并针对优化过,和纯汇编直接撸码区别不会太大了
QQ20180825171324.jpg
比较大的空间用在boot的服务上
QQ20180825171411.jpg
其实如果不在boot里面判断操作地址是否符合范围 对齐规则的话,来了地址直接操作,还能再小不少。不过大容量芯片一个flash的扇区是2K 除非能吧程序压缩掉一半 只有2K(那基本上是不可能的) 不然意义都不大了~~~
如果是中容量的话 每扇区大小1K的话,还可以考虑压到3K玩玩~~

#151 Cortex M0/M3/M4/M7 » 贴一个在stm32f1跑的裸奔usb程序 » 2018-08-25 17:00:52

posystorage
回复: 4

看了晕哥的这个帖子
https://whycan.cn/t_1546.html
想到前两天玩过的直接操作USB寄存器 不要任何库 裸奔跑起来的USB程序
就贴上来献献丑吧~
实现的功能不复杂 stm32f103  全速12M的usb  只能做设备
只用了BULK传输 单缓存 如果填充缓存部分足够快的话,可以不丢IN包的
传输速度取决于驱动 在我电脑随便用的一个bulk驱动上至少853kb/s的速度
当然驱动如果足够好的话 可以上到950kb 但是这个时候就需要用汇编来填缓冲了(包间隔如果小于7us),不然会丢in包
程序很简单 几个文件 操作USB的主要内容在easyusb.c里面
USB_HW只负责简单的硬件功能
mian里面没啥
QQ20180825163825.jpg
负责处理EP0的STEUP包的函数
QQ20180825165515.jpg
占用资源描述
编译优先级 最低
QQ20180825164546.jpg
编译完连其他乱七八糟的东西(包括启动文件 中断向量表 串口 led 时钟配置等等乱七八糟的)占用的空间
QQ20180825164445.jpg
单纯看两个usb核心文件生成的大小 加起来约1K
QQ20180825164528.jpg

文件
STM32F103的简易usb库

#152 Re: Cortex M0/M3/M4/M7 » 最近在逆向一个stm32的程序的时候的一点点心得 » 2018-08-18 23:28:10

晕哥 说:

逆向最怕的就是那种要某种条件达到才能被爆发的问题,
比如开机1000次后,要输入一个验证码,
这种很隐蔽的问题破解的时候未必能预测到。

这个程序本身不算大,全部把他弄懂要的时间不长。当然程序大了那不一样了

#153 Re: Cortex M0/M3/M4/M7 » 最近在逆向一个stm32的程序的时候的一点点心得 » 2018-08-18 21:43:12

顺便吐槽一句 这个论坛啥都好,就是图片上传真的太蛋疼了 mad mad

#154 Cortex M0/M3/M4/M7 » 最近在逆向一个stm32的程序的时候的一点点心得 » 2018-08-18 21:40:11

posystorage
回复: 22

前两天在看一个别人搞的程序,手上只有Hex,所以就直接用IDA来反汇编看了。有些心得给大家随便说说

这个程序很明显是有ST官方提供的标准库开发的,运行在STM32F072上面

库函数开发确实容易,但是给逆向 一定程度上也带来了极大的容易
几个原因
1:如果查看过keil生成的map文件,就可以知道ARMCC的链接器(link)在生成可执行文件的时候,函数的排列是按照字母顺序来的。
比如说,这个程序的开发者用到了USB的HID功能,所以我强行用官方的hid库函数历程编译了一个程序,查看编译完MAP文件
很明显的按字母顺序排列
图片
QQ20180818201634.jpg
2:ST的库函数(不管标准库,hal库等等),他的函数命名方式都是为 外设名字_xxx功能
比如GPIO_DeInit GPIO_Init GPIO_ReadInputData等等,用过的都知道
那么结合第一条 这一个外设的库函数内容 必定会被安排在一起

3:熟悉库函数的,经常用的,对函数的功能基本上都比较了解。
对比C写的内容,用十几秒,一分钟就能确定这个函数的名字,直接重命名函数为库里面的名字
这样节约了大量的时间去自己分析这个函数是干嘛的(如果不是库函数,一个函数的内容,往往要花少则几分钟,多则小半天的时间去研究他的运行机理)
虽然汇编用熟了不难,但是确实不友好。

QQ20180818203626.jpeg

这里随便贴一贴这个被完全逆向完的程序。所以函数都被完全的读懂在干嘛(即被重命名)
这个程序只花了不到48小时,就被完全捅穿了。所有明锁,暗锁,加密都像被衣服脱干净了一丝不挂的曝光在大摄像机镜头下
打码的函数是作者自己写的私有内容,为了保护,就打码了,没打码的都是库函数
图片
图片
图片
图片
图片
图片
说这么多,抛出个问题,让大家自己想,我不说,怎么样写程序,才是不容易被逆向破解的?欢迎大家畅所欲言

#158 Re: 全志 SOC » 淘宝上买几片 MX25L512【2.5元】试一试,不知道是卖家弄错价格了,还是拆机件 ... » 2018-07-19 11:29:47

哈哈,晕哥也有翻车的时候。我就说这种小的封装不可能那么大容量吧。买的不如卖的精啊

#159 Re: 全志 SOC » 网友买的 1.5元的拆机A13 » 2018-07-19 11:27:04

好便宜啊。就是这个包装太不上心了。这样很容易脚搞坏的

#160 Re: ESP32/ESP8266 » 推荐一个好玩的板子,8元,二手, 飞思卡尔 K21 + AP6210B + 12864液晶屏蓝牙POS机, 可以用作Cortex-M4开发板 » 2018-05-13 03:14:44

晕哥 说:

啊,还有这种操作?

驱动AP6210用linux一样的套路就好了.
https://whycan.cn/t_245.html

通讯抓包

通讯抓包
第一条是gd32发了复位指令
第二条是6210b返回的事件,复位ok
第三天是个莫名其妙的指令,然后就没有然后了,完全卡死了

#161 Re: ESP32/ESP8266 » 推荐一个好玩的板子,8元,二手, 飞思卡尔 K21 + AP6210B + 12864液晶屏蓝牙POS机, 可以用作Cortex-M4开发板 » 2018-05-13 03:08:29

DENHJD 说:

晕哥不来品尝下屎一样的NXP原厂固件库KSDK么,乐趣多多
SDK档案:https://pan.baidu.com/s/1yowvUOAFn5ma23VWznpOMw 密码:wkku,包含全部工具链和全部中间层组件
API手册地址:http://mcuxpresso.nxp.com/api_doc/dev/463/
另外晕哥对裸机下启动AP6210有什么对策么?我看Linux的驱动貌似初始化得先下载固件进去?

顺便简单介绍下NXP SDK档案的文件结构
目录下
device文件夹是原厂固件库
CMSIS文件夹是CMSIS层
middleware是中间层
rtos是freertos的BSP
boards文件夹是原厂开发板的例程,写KSDK基本靠它,API手册和RM写的都是一团糟,注意此文件夹下不是完整工程,没有将上述4个文件夹中在此工程所需的文件复制进来,如需获取完整的工程需要利用NXP的MCUXpresso Config Tools进行生成

MCUXpresso Config Tools类似于ST的STM32Cube MX,可以根据SDK生成工程,分配引脚,编辑时钟树

讲道理我觉得为啥飞思卡尔没像stm32一样推广开用。最大的锅就是固件库,和跟屎一样的参考手册。那么复杂的寄存器,库的普及跟不上。手册该讲的重点一笔带过,寄存器只告诉你名字,不告诉有啥用。功能怎么配置恕不奉告,自己猜去吧,自己排列组合试参数去吧

#162 Re: ESP32/ESP8266 » 推荐一个好玩的板子,8元,二手, 飞思卡尔 K21 + AP6210B + 12864液晶屏蓝牙POS机, 可以用作Cortex-M4开发板 » 2018-05-13 03:04:31

晕哥 说:

啊,还有这种操作?

驱动AP6210用linux一样的套路就好了.
https://whycan.cn/t_245.html

我试了在gd32那个板子上移植btstack。
就是这个同款板子
啊

然后通讯部分是能用了,但是发送复位指令后,紧接着又发了一条ap6210b不认识的指令,然后就完全卡死了。折腾了一天了没找到怎么解决,晕哥求救

#163 Re: ESP32/ESP8266 » 推荐一个好玩的板子,8元,二手, 飞思卡尔 K21 + AP6210B + 12864液晶屏蓝牙POS机, 可以用作Cortex-M4开发板 » 2018-05-06 20:54:33

xinxiaoci 说:
晕哥 说:
xinxiaoci 说:

https://blog.csdn.net/l_backkom/article/details/41512675
是不是跟这个一样

主芯片 M21G9VMC -> MK21DN512VMC5
http://cache.freescale.com/files/32bit/doc/data_sheet/K21P80M50SF4.pdf
第5页

Original part number  Alternate part number
MK21DX128VMC5      M21GGVMC
MK21DX256VMC5      M21GHVMC
MK21DN512VMC5      M21G9VMC

开机自毁,怕怕,估计已经爆掉一个了。

我们的口号是:挖坑行,填坑你更行!晕哥,你把它填上

https://whycan.cn/t_1146.html

#164 Re: ESP32/ESP8266 » K21+AP6210B+12864 液晶板子的一些资料 » 2018-05-06 20:48:12

嫌板载不好玩,直接吧u挖下来上转接板玩
植锡
bga
植好的样子
看着坑坑洼洼,实际能用
bga
bga
焊上
bga
侧面检查
bga
一口气焊了两
bga
引脚全测试都通~~

#165 ESP32/ESP8266 » K21+AP6210B+12864 液晶板子的一些资料 » 2018-05-06 20:38:48

posystorage
回复: 8

首先感谢昏哥邀请~~
https://whycan.cn/t_1137.html

蓝牙我玩不来,只会玩mcu和屏幕
点亮屏幕和led的效果
点亮屏幕
flash测试


贴上我跑出来的引脚定义:

双led,L10(正,vdd)  右下,负c8 右上,负b6
                 c2         c12

B7  C7  K11  L11
c7  c6  a19  a18
四个LED,从左至右

调试下载口  从上到下
vdd
jtag clk
jtag di   rx
jtag tdo  tx
jtag tms  swd
下载口

屏幕
RST SCK  SDAT   RS    CS
J11  D5   D6    C6    C5
rst  c16  c9    c10   c11

背光 D7
蜂鸣器 c9 ptb19 无源

电池电压检测 L1  adc0_dp3

空闲引脚接adc的 b2焊盘 ptd6  adc0-se7b

25spi flash   io   spi1
1 cs    c11 b13
2 so    e9  b17
3 wp
4 gnd
5 si    b10 b16
6 sck   c10 b11
7 hd    j11 rst
8 vcc

剩余没跑的,参考此图,可以跑
引脚
引脚


led/点屏/adc/dac/vref/spiflash/usb的测试程序
需要自己下载 RavenKS22渡鸦 的库配合使用,keil环境

源码下载:none.7z

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn