<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>F1C100S on Rancho&#39;s Notes</title>
    <link>https://fan-pengfei.top/tags/f1c100s/</link>
    <description>Recent content in F1C100S on Rancho&#39;s Notes</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sun, 02 Oct 2022 04:23:19 +0000</lastBuildDate>
    <atom:link href="https://fan-pengfei.top/tags/f1c100s/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>F1C100S驱动开发</title>
      <link>https://fan-pengfei.top/posts/f1c100s%E9%A9%B1%E5%8A%A8%E5%BC%80%E5%8F%91/</link>
      <pubDate>Sun, 02 Oct 2022 04:23:19 +0000</pubDate>
      <guid>https://fan-pengfei.top/posts/f1c100s%E9%A9%B1%E5%8A%A8%E5%BC%80%E5%8F%91/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;Uboot和系统跑起来了，接下来就是进行驱动开发了；&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;heartbeat心跳灯&#34;&gt;Heartbeat(心跳灯)&lt;/h2&gt;
&lt;h3 id=&#34;修改设备树&#34;&gt;修改设备树：&lt;/h3&gt;
&lt;p&gt;在设备树文件&lt;code&gt;arch/arm/boot/dts/sun8i-v3s-licheepi-zero.dts&lt;/code&gt;中；&lt;/p&gt;
&lt;p&gt;在 / { } 所包裹的根节点目录下添加：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plaintext&#34; data-lang=&#34;plaintext&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;leds {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    compatible = &amp;#34;gpio-leds&amp;#34;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    user_led {
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    label = &amp;#34;led:usr&amp;#34;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        gpios = ; /* PE12 */
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    };
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;};
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;其中&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plaintext&#34; data-lang=&#34;plaintext&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;gpios = ; /* PE12 */
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;代表引脚 &lt;code&gt;4 * 32 + 12&lt;/code&gt;也就是&lt;code&gt;PE12（ A~G： 0~6）&lt;/code&gt;
其名字为：&lt;code&gt;led:usr&lt;/code&gt;；&lt;/p&gt;
&lt;p&gt;系统启动后与LED控制有关的文件；&lt;/p&gt;
&lt;p&gt;系统启动后，将看到这样的文件：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$: ls /sys/class/leds/
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;led:usr
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;这里三个文件夹分别对应设备树中定义的三个LED；&lt;/p&gt;
&lt;h3 id=&#34;编译设备树&#34;&gt;编译设备树：&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;可以只编译设备树，不编译其他文件；&lt;/p&gt;
&lt;/blockquote&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make ARCH&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;arm CROSS_COMPILE&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;arm-linux-gnueabi- dtbs -j12
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id=&#34;控制led灯亮灭&#34;&gt;控制LED灯亮灭：&lt;/h3&gt;
&lt;p&gt;点亮LED：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$: echo &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt; &amp;gt; /sys/class/leds/led&lt;span style=&#34;color:#ae81ff&#34;&gt;\:&lt;/span&gt;usr/brightness
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;熄灭LED：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$: echo &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt; &amp;gt; /sys/class/leds/led&lt;span style=&#34;color:#ae81ff&#34;&gt;\:&lt;/span&gt;usr/brightness
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;控制LED闪烁：&lt;/p&gt;</description>
    </item>
    <item>
      <title>F1C100S开发记录</title>
      <link>https://fan-pengfei.top/posts/f1c100s%E5%BC%80%E5%8F%91%E8%AE%B0%E5%BD%95/</link>
      <pubDate>Sat, 01 Oct 2022 04:10:08 +0000</pubDate>
      <guid>https://fan-pengfei.top/posts/f1c100s%E5%BC%80%E5%8F%91%E8%AE%B0%E5%BD%95/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;最近画了一个Linux板子，主控是全志的F1C100S，自带了32M RAM，不是很大，但是可以学习下；&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;板子图片&#34;&gt;板子图片：&lt;/h2&gt;
&lt;p&gt;板子正面
板子反面
UBoot启动&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;f1c100s-1&#34; loading=&#34;lazy&#34; src=&#34;https://fan-pengfei.top/posts/f1c100s%E5%BC%80%E5%8F%91%E8%AE%B0%E5%BD%95/img-1.jpg&#34;&gt;
&lt;img alt=&#34;f1c100s-2&#34; loading=&#34;lazy&#34; src=&#34;https://fan-pengfei.top/posts/f1c100s%E5%BC%80%E5%8F%91%E8%AE%B0%E5%BD%95/img-2.jpg&#34;&gt;
&lt;img alt=&#34;f1c100s-3&#34; loading=&#34;lazy&#34; src=&#34;https://fan-pengfei.top/posts/f1c100s%E5%BC%80%E5%8F%91%E8%AE%B0%E5%BD%95/img-3.jpg&#34;&gt;&lt;/p&gt;
&lt;h2 id=&#34;flash下载工具使用&#34;&gt;FLASH下载工具使用&lt;/h2&gt;
&lt;p&gt;1、通过命令 &lt;code&gt;sudo sunxi-fel ver&lt;/code&gt; 来确认有无成功进入fel模式；&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo sunxi-fel ver
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;2、短接FLASH&lt;code&gt;1&lt;/code&gt;和&lt;code&gt;4&lt;/code&gt;脚，可以进入fel模式，其实就是CS引脚拉低；&lt;/p&gt;
&lt;p&gt;3、单次运行（下载到RAM中）：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sunxi-fel uboot /your/path/to/u-boot-sunxi-with-spl.bin
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;4、烧进 spi-flash （开机自启）&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-plaintext&#34; data-lang=&#34;plaintext&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sunxi-fel -p spiflash-write 0 /your/path/to/u-boot-sunxi-with-spl.bin
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;其中0是烧录偏移地址；&lt;/p&gt;
&lt;h2 id=&#34;uboot编译&#34;&gt;Uboot编译&lt;/h2&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo apt-get install git
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git clone https://gitee.com/LicheePiNano/u-boot.git
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cd u-boot
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 查看分支&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git branch -a
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 切换到 Nano 分支&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git checkout nano-lcd800480
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;git clone -b nano-lcd800480 --depth&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt; https://github.com/Lichee-Pi/u-boot.git
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;此处告知make采用arm-linux-gnueabi下的所有交叉编译工具，目标架构为Arm，设定各项默认配置为 nano 的spiflash支持版
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make ARCH&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;arm CROSS_COMPILE&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;arm-linux-gnueabi- f1c100s_nano_uboot_defconfig
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 若不带spi-flash的板子，请换成 licheepi_nano_defconfig&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 进行可视化配置&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make ARCH&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;arm menuconfig
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 修改默认bootcmd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;gedit include/configs/suniv.h
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 需要修改为&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;#define CONFIG_BOOTCOMMAND &amp;#34;run distro_bootcmd&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#75715e&#34;&gt;# 开始编译&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;make ARCH&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;arm CROSS_COMPILE&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;arm-linux-gnueabi- -j8
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;只需要&lt;code&gt;u-boot-sunxi-with-spl.bin&lt;/code&gt;即可；&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
