WhyCan Forum(哇酷开发者社区)

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

您尚未登录。

#1 Re: 全志 V3S/F1C100s/X3 » F1C100S Dram 出错 » 2020-09-09 09:22:44

供电不稳或者频率超的太高了?

#4 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/ » 如何把双线串口转单线串口? » 2020-07-05 11:26:36

iamseer 说:

我贴的这张图和你右上那张(USB to 1-wire)原理基本一样,但逻辑是反的。注意我贴那张的RX位置估计也需要加上拉,如果你UART那边不自带的话。

原理基本就是:Tx空闲时为高,那么左侧为低时,三极管导通,RX波形和左侧保持一致。Tx工作时拉低电平,三极管截止,Rx不受影响。因此Tx信号跑不到Rx上面去。

多谢大佬!

#5 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/ » 如何把双线串口转单线串口? » 2020-07-04 22:06:42

iamseer 说:

"他通讯端口是单线串口,收发都是标准ttl电平"
这句话看起来很奇怪。你先确认好是1-Wire,还是收发共用一根线的串口。

是单线复用的串口,而且还要保证tx发数据的时候,rx不会接收到同样的数据。。

#6 DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/ » 如何把双线串口转单线串口? » 2020-07-02 23:48:09

xm1994
回复: 5

我有一个设备,他通讯端口是单线串口,收发都是标准ttl电平。想做一个双线ttl串口转单线的。从网上搜了几个电路,都没太搞明白,有没有大佬可以给讲讲怎么做
还是直接用 DS2480B 这种转换芯片

Schematic2.jpg
circuit.png
unnamed.png

#8 Re: 全志 V3S/F1C100s/X3 » 求个F1C的工程师 » 2020-06-11 17:01:05

5000.. 嵌入式工程师这么便宜的吗

#14 Re: 站务公告/网站建设 » 感觉最近帖子变水了? » 2020-04-21 09:45:50

去年水了两个技术贴之后就变鸽子了。。哎。。开的坑太多 一个都填不平

#16 Re: DIY/综合/Arduino/写字机/3D打印机/智能小车/平衡车/四轴飞行/ » 小白请教一下这个中国银行网银密码器是什么原理? » 2020-04-10 09:46:12

nuvoton 说:

专业!这种对时间精度要求高吗,记得是1分钟左右变化一次。

高,一般有效期内误差不能超过2分钟

#17 Re: 技术人生/软件使用技巧/破解经验/技术吐槽/灌水 » 逻辑分析仪DSLogic Basic到Plus的升级教程(无需编程器) » 2020-02-29 10:11:49

老版的Basic直接拆掉IIC改一个字节的USB PID就可以变成plus,U2 Basic这种办法已经失效了。

#21 Re: 全志 V3S/F1C100s/X3 » 没找到晶晨Amlogic板块啊,想开个大坑 » 2019-12-20 09:18:01

晕哥 说:

是FPGA吗?可以先发到FPGA或者DIY板块,以后多了我统一移到新板块就行。

是个面向电视/播放器的跑android之类的芯片

#23 Re: 全志 V3S/F1C100s/X3 » LicheePi Nano 运行lvgl只有半截,无全屏 » 2019-10-30 21:59:48

确实是lvgl的linux项目工程通过io读取的屏幕分辨率及位深

lvgl是从framebuffer读取的分辨率,而framebuffer汇报的分辨率是从内核使用的dts中panel项设置的

#24 Re: 全志 V3S/F1C100s/X3 » 挖坑分支 » 2019-10-30 18:47:21

有些人可能需要4.19的新特性,有些人可能需要5.2的新特性。只要suniv的代码不被主线合并,那总会有各种乱七八糟的分支存在的。

#25 Re: 全志 V3S/F1C100s/X3 » 挖坑分支 » 2019-10-30 18:40:27

一个特定的版本不一定适合于所有人,总有人会遇到坑,所以其实多看看置顶帖里面的踩坑记录才是更好的方式。
比如我自用的版本:
https://github.com/summershrimp/opendeck-linux(国内镜像https://gitee.com/xm1994/linux-f1c100s
在里面添加了
0. 修复了icenowy nano-4.14-exp分支的usb故障问题
1. 来自于openwrt的mtdsplit功能
2. GT911 800x480触摸配置
3. 修改了lichee的设备树,添加了i2c/backlight等节点
4. 修改了USB gadget HID与ep size有关的变量,支持report size > ep max size

我的需求是做一个通过usb hid通讯的触控面板,还能支持重置,因此才有了上面这些提交。

但是这些东西并不一定每个人都需要,对不需要的人来说反而造成了负担。
最好的办法还是有能力自己填坑。

#27 Re: 全志 V3S/F1C100s/X3 » LicheePi Nano 运行lvgl只有半截,无全屏 » 2019-10-30 14:47:30

这是土鳖的arm嵌入式设备,不支持诸如EDID之类的显示器信息交互协议

#28 Re: 全志 V3S/F1C100s/X3 » LicheePi Nano 运行lvgl只有半截,无全屏 » 2019-10-30 14:46:59

设备分辨率都是手动指定的,不存在自动检测这一说。所以请查阅面板的spec并正确设置分辨率。

#33 Re: 全志 V3S/F1C100s/X3 » S3 ext4 根文件系统, 用着用着就挂了, 请问应该如何修复? » 2019-09-21 09:32:13

还能这么玩 说:

找到树莓派的开机自动修复ext4 https://raspberrypi.stackexchange.com/questions/61723/raspberry-pi-3-and-raspbian-jessie-how-to-run-fsck-at-boot

但是有一个问题, 根文件系统都挂载不上, 怎么调用命令修复了, 又是一个鸡生蛋,蛋生鸡的问题了。

initramfs了解下

#34 Re: 全志 V3S/F1C100s/X3 » LicheePi Nano Usb复合设备RNDIS功能问题 » 2019-09-18 10:09:41

Device Drivers  ---> USB support  --->    USB Gadget Support  --->
enable  USB Gadget functions configurable through configfs 
disable  USB Gadget precomposed configurations

#35 Re: 全志 V3S/F1C100s/X3 » LicheePi Nano Usb复合设备RNDIS功能问题 » 2019-09-18 10:05:39

你装的是g_cdc驱动,但是脚本用的configfs。 内核选项里关掉legacy usb gadget, 启用configfs usb gadget再试试。

#36 Re: 全志 V3S/F1C100s/X3 » nano板子GT911触摸屏驱动问题 » 2019-09-12 09:42:30

下我贴子里的固件试试 如果不行就基本上是硬件问题了

#37 Re: 全志 V3S/F1C100s/X3 » LittlevGL最后如何打包到nano板子上自动运行的? » 2019-09-10 20:02:29

shiqx429 说:

USE_EVDEV我已经设置过了,就是触控无效我才去找置顶的帖子,那里有说"littlegv :在官方的framebuffer demo基础上添加了libinput设备的初始化,就可以用触屏了。",我也不确定呢,在试!

qter 说:

也可以用 USE_EVDEV=1 吧, libinput 是不是把 ev又封装了一遍?

用evdev就可以,可以看我项目里的这个提交
https://github.com/summershrimp/opendeck-gui/commit/f16c256390c36c5360f5efb919942c9960aef1eb

#39 Re: 全志 V3S/F1C100s/X3 » 分享一个 5寸的 800x480 的 f1c100s 固件, 感谢 @xm1994 » 2019-08-19 16:56:50

还能这么玩 说:
mango 说:

15楼图有问题,兼容性不够。
FP6xxxx系列,可以这样用。
如果是GT系列,RST必须是IO口,由于存在两组IIC通讯地址,上电需要靠这RST和INT两条线的时序确定。

https://whycan.cn/files/members/1597/2019-08-17_112407.png

怪不得, 还以为我的 GT911 触摸屏 精神分裂了,
i2c_detect 检测, 有时候启动是 0x14, 有时候是 0x5d,

然后再看 @xm1994 的 dts 代码,
https://github.com/summershrimp/opendeck-linux/commit/eb7a274d02b52a02198e3b2726df822eed0f36c8

发现 rst 引脚也接上了

linux的goodix驱动好像不包括上电时序部分的控制(也可能是我没找到),因此我把两个地址都用了,总有一个能初始化成功。

#41 Re: 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-08-19 16:50:36

达克罗德 说:
xm1994 说:

后来去掉了libinput和eudev,开机6秒左右进界面

不错,能到3秒不

3s有点悬。。把Uboot的两秒等待去掉,估计能压到4s左右

#45 Re: 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-08-02 09:53:24

hzpyl 说:

请问,xm1994
你用的gcc-linaro 是什么版本?

就lichee nano官方文档那个版本,7.2

#46 Re: 全志 V3S/F1C100s/X3 » BITC200(F1c200s/100s)手工焊接简直焊瞎了眼 » 2019-08-01 17:19:49

mango 说:
达克罗德 说:

TINY200啥时候出货?

本周日样板到手,争取在8.12首批焊接出来,可能200-500pcs。
我一直认为F1C200s比100s有更高的性价比,这批就全贴它了。

好! 支持! 在线等!有希望了!争取买首发!

#47 Re: 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-08-01 09:24:10

hzd52044 说:

楼主的资料很全面,进到登陆界面的账号是 root  密码是 opendeck。 找了找没看见有写,猜了下

buildroot是  2019.02.4

密码在buildroot的config里面是能看到的

#48 Re: 全志 V3S/F1C100s/X3 » ubuntu su 失效的问题 » 2019-07-30 09:53:23

你su命令的setuid标志没了。。用sudo chmod +s su 之后因该就可以了

#49 Re: 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-07-30 09:51:42

hzpyl 说:

如果你下载过以前Icenowy的f1c100s-480272lcd-test那个分支,直接把patch上的修改自己添加过去就好。
如果没下过的话 建议科学上网后再下载。

#50 Re: 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-07-28 14:00:26

hzpyl 说:

厚着脸皮问  楼主  xm1994

这个帖子的源程序,能不能提供?

代码,二进制,配置文件上面都贴了,可以仔细翻翻

#51 Re: 全志 V3S/F1C100s/X3 » lichee nano官方linux config文件踩坑与填坑(常见配置误区) » 2019-07-24 22:54:06

晕哥 说:

感谢分享,  0x03 技巧 get 到了!

我也是觉得以前给其他设备适配openwrt的时候,也用的w25qxx,没修改过内核的相关代码,后来仔细查了查发现能从config里直接关掉。而且用修改代码的方法换一片其他的flash就又要重编内核好麻烦。

#52 全志 V3S/F1C100s/X3 » lichee nano官方linux config文件踩坑与填坑(常见配置误区) » 2019-07-24 22:37:58

xm1994
回复: 16

前文:
终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo
相关的配置文件,编译好的二进制都可以在楼层中找到。

0x01:  开机卡在waiting for rootfs

原因有两点

1. 找不到SPI flash
f1c100s应使用A31的spi控制器驱动,但lichee官方config中是启用的A10 SoC的驱动。
表现为开机ttl日志中没有dts中的spiflash 分区信息打印,且卡在waiting for rootfs
启用:Device Driver --->  SPI Support ---> Allwinner A31 SPI controller
禁用:Device Driver --->  SPI Support ---> Allwinner A10 SoCs SPI controller

2. 未开启mtdblock
lichee官方的u-boot 中 kernel cmdline 使用jffs2格式的mtdblock3作为rootfs,但config中没有打开mtdblock设备接口。
表现为开机ttl日志中有dts中的spiflash 分区信息打印,但仍然卡在waiting for rootfs
启用:Memory Technology Device (MTD) support  --->   Caching block device access to MTD devices   

0x02: 无法挂载jffs2分区
lichee 官方配置文件没有打开jffs2的文件系统支持。
启用: File systems  --->  Miscellaneous filesystems  --->   Journalling Flash File System v2 (JFFS2) support     
这里推荐把squashfs4.0也一并打开,后面会开一帖讲下如何添加更新固件和恢复默认设置的功能。

0x03:  开机后报大量JFFS2 erase size错误
这个lichee官方和论坛里很多人的帖子都有提到,修复方法是patch掉内核里对应flash型号的SECT_4K参数。但是实际上内核配置文件中为我们预留了关闭4K erase size 的选项,无需侵入内核代码修改。
禁用:Memory Technology Device (MTD) support  --->  SPI-NOR device support  --->    Use small 4096 B erase sectors     
这样以后更换其他的flash芯片也无需重新修改内核。

0x04: 运行framebuffer gui程序后,右上角有闪烁的光标
论坛里有修改bootargs的办法:
https://whycan.cn/t_543.html
https://whycan.cn/t_1953.html#p12829
搜索引擎里搜到的基本都说要patch代码

但我个人认为两种方法都不是根本办法,其实config中有可以关闭framebuffer 作为console的选项。
修改方法
禁用:Device Driver ---> Graphics support  --->   Console display driver support  --->    Framebuffer Console support
但这个选项默认无法修改。仔细查看相关的Kconfig文件后,发现这个选项只有启用了专家模式(Expert Mode),且没有其他依赖选项时才可以关闭。
启用专家模式:General setup ---> Configure standard kernel features (expert users)  但不要修改里面的选项
然后就可以禁用:Device Driver ---> Graphics support  --->   Console display driver support  --->    Framebuffer Console support
这样你的显示器在framebuffer初始化完了就会变成黑色,运行gui程序后也不会有闪烁的光标了。

#53 Re: 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-07-24 22:02:41

hzpyl 说:

楼主,
能不能发一个 800x480液晶 + GT911能用的bin文件,测试一下啊

已更新

#54 Re: 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-07-24 22:02:10

更新:
uboot, linux, buildroot 的配置文件
buildroot 用的2019.04
configs.tgz


编译好的二进制:
0x0 u-boot
0x40000 dtb
0x50000 kernel
0x510000 rootfs


nano-spi-touchscreenok.tgz
rootfs_jffs2.tgz

u-boot 和 kernel中不含splash image,因此开机会黑屏。
rootfs中有编译的littlegv demo程序,开机会自动运行(约10s),可以用lichee nano官方套装的电容屏实现触控。

#56 全志 V3S/F1C100s/X3 » 终于搞好了荔枝派nano linux uboot瘦身 + usb gadget hid + gt911触控 + littlevgl demo » 2019-07-21 23:10:13

xm1994
回复: 69

发个贴纪念下,仅供参考。

usb gadget参考帖:
https://whycan.cn/t_1672.html#p14652

jiangming1399 说:

花了一点时间对Icenowy的patch和chong的patch进行了比较,结果发现chong的patch包基本上就是在Icenowy的基础上更改了下面的这个文件:


--- ../linux/drivers/clk/sunxi-ng/ccu-suniv.c    2019-01-15 22:48:18.824587965 +0800
+++ drivers/clk/sunxi-ng/ccu-suniv.c    2019-01-23 09:05:17.959348454 +0800
@@ -238,7 +238,7 @@
/* The BSP header file has a CIR_CFG, but no mod clock uses this definition */

static SUNXI_CCU_GATE(usb_phy0_clk,    "usb-phy0",    "osc24M",
-              0x0cc, BIT(8), 0);
+              0x0cc, BIT(1), 0);

static SUNXI_CCU_GATE(dram_ve_clk,    "dram-ve",    "pll-ddr",
               0x100, BIT(0), 0);


理论上将上面这个patch应用到Icenowy的4.14内核中,USB应该也就能跑了。

Icenowy 的 f1c100s 分支是linux 4.15-next, uboot直接引导时musb部分会报错,原因未知。fel usb加载uboot没问题。
f1c100s-480272lcd-test 分支修改后可正常冷机启动, usb gadget也是可以驱动的。


gt911触控参考帖

https://whycan.cn/t_2482.html#p19396

guo_felix 说:

注意到原理图中 电容屏中断口连接的是PE3?

https://whycan.cn/files/members/735/ts_i2c.jpg

而且实际复位端口也是直接用了RC,即图中1口,实际dts并没有配置到gt911的中断端口以及复位端口?

尝试如下修改,不过好像没什么用处:

	gt911:touchscreen@14{
		compatible = "goodix,gt911";
		reg = <0x14>;
		interrupt-parent = <&pio>;
		interrupts = <4 3 IRQ_TYPE_EDGE_FALLING>;/*(PE3)*/
		pinctrl-names = "default";
		pinctrl-0 = <&ts_reset_pin>;
		irq-gpios = <&pio 4 3 GPIO_ACTIVE_HIGH>;/*(PE3)*/
		reset-gpios = <&pio 4 9 GPIO_ACTIVE_HIGH>; /*RST (PE9)*/
		/*touchscreen-swapped-x-y*/
		};

还想请问一下,如果中断配置成功的话,是不是/dev/下就会有input文件夹,因为现在板上一直是没有这个文件夹

gt911根据reset pin和interrupt pin拉高的顺序决定使用i2c地址0x14或0x5d, 但似乎linux的goodix驱动尚未支持设置两个时序,导致在调试时地址会变化,从而无法驱动。可通过在dts中添加两个不同地址的gt911来解决,总有一个能驱动成功。

还要根据官方的说明,在goodix.c里面加载一个二进制的配置表。

UBoot瘦身 :
https://github.com/summershrimp/u-boot-lichee/commit/ce09ef150a2f08729ed7efa3be38c35918cbedf4

Icenowy 的 U-Boot 很多地方没有使用宏来控制功能的可用性。在这里我修改了一下,可以正常的裁剪掉网络/分区表/EFI/USB/nvram等相关功能,可以缩减到128k左右,留出更多的空间给内核和文件系统。
瘦身最关键的是调整NVRAM的储存位置。

littlegv :在官方的framebuffer demo基础上添加了libinput设备的初始化,就可以用触屏了。

目前终于USBHID可以双向通讯了,触屏显示和触摸也完美,可以开始写业务程序了TAT
稍后补上各种patch和config




















以下是楼主 2019-07-22 8# patch & config 更新:
----------------------------------------------------------
littlevgl 触屏适配:
https://github.com/summershrimp/opendeck-gui/commit/f4261556206038160f9b85e6c911c020eb0727dd

linux 4.14 Icenowy内核  patch:
https://github.com/summershrimp/opendeck-linux/commit/eb7a274d02b52a02198e3b2726df822eed0f36c8

















以下是楼主 2019-07-25 16# 更新:
----------------------------------------------------------
uboot, linux, buildroot 的配置文件
buildroot 用的2019.04
configs.tgz


编译好的二进制:
0x0 u-boot
0x40000 dtb
0x50000 kernel
0x510000 rootfs


nano-spi-touchscreenok.tgz
rootfs_jffs2.tgz

u-boot 和 kernel中不含splash image,因此开机会黑屏。
rootfs中有编译的littlegv demo程序,开机会自动运行(约10s),可以用lichee nano官方套装的电容屏实现触控。

#57 Re: 全志 V3S/F1C100s/X3 » F1C100s如何在uboot触发芯片进入usb otg烧录模式 » 2019-07-03 16:45:05

uboot: go 0xffff0020

Through serial console
If you have access to the UART already, you can send the character '1' ('2' on some devices) to the device during power-up.

Boot1 is initialized using this method.

With later SoCs, Allwinner's U-boot supports the "efex" command.

If "efex" is not available in your U-boot, you can use the simple uboot "go" command with arguments pointing to the return FEL address:
http://linux-sunxi.org/BROM#Other_booting_methods
=> go 0xffff0020
Starting application at 0xFFFF0020 ...

页脚

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