idea6410开发板都有哪些功能支持什么 *** 作系统

idea6410开发板都有哪些功能支持什么 *** 作系统,第1张

这句DMA_InitStructureDMA_BufferSize的设置到底什么意思?数据手册说

答:我理解的话,BufferSize是要传输的数量,比如你的u16 buff[10],DMA传输要添满这个单元的话,那就设置BufferSize=10,这样就添满了。当然低于10大于0的任意数字都可以。

问:问题是这样的,小弟最近需要搞STM32+UIP/LWIP+DM9000 来与PC机通信,然

答:你的侧重点应该在LWIP在STM32上的移植、和STM32上的DM9000驱动这上面。

linux-2635在fs2410开发板启动后,通过nfs挂载文件系统,但是rtc不能用,也会在挂载文件系统之前打印如下提示信息:

TCP cubic registered

NET: Registered protocol family 1

RPC: Registered udp transport module

RPC: Registered tcp transport module

drivers/rtc/hctosysc: unable to open rtc device (rtc0)

IP-Config: Complete:

device=eth0, addr=19216820253, mask=2552552550, gw=192168201,

host=thomas_fs2410, domain=, nis-domain=(none),

bootserver=19216820192, rootserver=19216820192, rootpath=

Looking up port of RPC 100003/2 on 19216820192

Looking up port of RPC 100005/1 on 19216820192

VFS: Mounted root (nfs filesystem)

Mounted devfs on /dev

Freeing init memory: 184K

解决方案:

1 内核配置选项

--- Real Time Clock

[] Set system time from RTC on startup and resume

(rtc0) RTC used to set the system time

[ ] RTC debug support

RTC interfaces

[] /sys/class/rtc/rtcN (sysfs)

[] /dev/rtcN (character devices)

[ ] RTC UIE emulation on dev interface

on-CPU RTC drivers

<> Samsung S3C series SoC RTC

2 linux kernel 中 已经支持S3C2410的RTC,但是并没有添加到平台设备初始化数组中,所以系统启动时并不会初始化这一部分,需要修改文件mach-smdkc

static struct platform_device smdk2410_devices[] __initdata = {

&s3c_device_ohci,

&s3c_device_lcd,

&s3c_device_wdt,

&s3c_device_i2c0,

&s3c_device_iis,

&s3c_device_rtc, //新增代码

};

3 创建设备节点,在文件系统/dev目录下执行:

sudo mknod rtc c 10 135

4 重新编译内核,查看启动信息

S3C24XX RTC, (c) 2004,2006 Simtec Electronics

s3c-rtc s3c2410-rtc: rtc disabled, re-enabling

s3c-rtc s3c2410-rtc: rtc core: registered s3c as rtc0

这里说明rtc驱动起来可以正常工作了

S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics

s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled

No device for DAI UDA134X

No device for DAI s3c24xx-i2s

ALSA device list:

No soundcards found

TCP cubic registered

NET: Registered protocol family 17

s3c-rtc s3c2410-rtc: hctosys: invalid date/time

以上信息说明当前 RTC 时间invalid , RTC 初始时间为 Wed Dec 31 23:59:59 1969 ;

从内核函数 int rtc_valid_tm(struct rtc_time tm) ,可以看出,当 year 小于 1970 时,认为是时间 invalid ,函数返回 -EINVAL ;

drivers/rtc/rtc-libc

/

Does the rtc_time represent a valid date/time

/

int rtc_valid_tm(struct rtc_time tm)

{

if (tm->tm_year < 70

|| ((unsigned)tm->tm_mon) >= 12

|| tm->tm_mday < 1

|| tm->tm_mday > rtc_month_days(tm->tm_mon, tm->tm_year + 1900)

|| ((unsigned)tm->tm_hour) >= 24

|| ((unsigned)tm->tm_min) >= 60

|| ((unsigned)tm->tm_sec) >= 60)

return -EINVAL;

return 0;

}

EXPORT_SYMBOL(rtc_valid_tm);

下面来验证一下这个想法

# hwclock

Wed Dec 31 23:59:59 1969 0000000 seconds

# date

Thu Jan 1 00:06:58 UTC 1970

系统时间是通过 date 来设置的, RTC 时间是通过 hwclock 来设置的。开机时系统时间首先通过 RTC 来获得,RTC没有设置时,系统时间也会使用Wed Dec 31 23:59:59 1969。

# hwclock --help

BusyBox v192 (2008-04-01 21:32:34 CST) multi-call binary

Usage: hwclock [-r|--show] [-s|--hctosys] [-w|--systohc] [-l|--localtime] [-u|--utc] [-f FILE]

Query and set a hardware clock (RTC)

Options:

-r Read hardware clock and print result

-s Set the system time from the hardware clock

-w Set the hardware clock to the system time

-u The hardware clock is kept in coordinated universal time

-l The hardware clock is kept in local time

-f FILE Use the specified clock (eg /dev/rtc2)

# hwclock -s

hwclock: settimeofday() failed: Invalid argument

# hwclock -w

s3c2410-rtc s3c2410-rtc: rtc only supports 100 years

hwclock: RTC_SET_TIME: Invalid argument

以上错误信息都是因为 year 设置不当引起的。没有设置 RTC , RTC 也不会启动计时。

下面首先设置正确的系统时间,然后将系统时间传递给 RTC 。

# date 04061228200820

Sun Apr 6 12:28:20 UTC 2008

# hwclock -w

# hwclock

Sun Apr 6 12:29:01 2008 0000000 seconds

# hwclock

Sun Apr 6 12:30:15 2008 0000000 seconds

Ok , RTC 开始工作了!

为了使系统时间和 RTC 时间同步,可以在初始化文件中添加命令

Hwclock –s

使每次开机时读取 RTC 时间,并同步给系统时间。

在 etc/initd/rcS 中添加

/bin/hwclock -s

时间设置的相关命令(转载)

1 在虚拟终端中使用date 命令来查看和设置系统时间

查看系统时钟的 *** 作:

# date

设置系统时钟的 *** 作:

# date 09171327200330

通用的设置格式:

# date 月日时分年 秒

2 使用hwclock 或clock 命令查看和设置硬件时钟

查看硬件时钟的 *** 作:

# hwclock --show 或

# clock --show

2003年 09月 17日 星期三 13 时24 分11 秒 -0482735 seconds

设置硬件时钟的 *** 作:

# hwclock --set --date="09/17/2003 13:26:00"

或者

# clock --set --date="09/17/2003 13:26:00"

通用的设置格式:hwclock/clock --set --date=“ 月/ 日/ 年时:分:秒” 。

3 同步系统时钟和硬件时钟

Linux 系统( 笔者使用的是Red Hat 80 ,其它系统没有做过实验) 默认重启后,硬件时钟和系统时钟同步。如果不大方便重新启动的话( 服务器通常很少重启) ,使用clock 或hwclock 命令来同步系统时钟和硬件时钟。

硬件时钟与系统时钟同步:

# hwclock --hctosys

或者

# clock --hctosys

上面命令中,--hctosys 表示Hardware Clock to SYStem clock 。

系统时钟和硬件时钟同步:

# hwclock --systohc

或者

# clock --systohc

使用图形化系统设置工具设置时间

参考:>

是网卡网卡访问的时候不都是一闪一闪的

如果计算机与10/100Mbps变换机端口正常连接,那么,D-Link 530TX的FULL和100M指示灯应当呈绿色,Link指示灯则不断闪烁;Accton 1207D的Link l00Mbps指示灯呈绿色,而ACT指示灯则不断闪烁,如果计算机与变换机未能正常连接,那么,所有指示灯均应熄灭,因此,当网卡没有指示灯被点亮时,表明计算机与网络设备之间没有建立正常连接,物理链路有故障发生。

需要注意的是,无论网卡是否安装了驱动程序,交换机是否设置了VLAN或其他功能,只要网卡与变换机之间的链路是畅通的,那么相应的指示灯就应当被点亮。否则,可以简单地判断为网路连通性故障,应当使用专用工具对链路进行测试。

通常情况下,集成网卡只有两个指示灯,**指示灯用于表明连接是否正常,绿色指示灯则表示计算机主板是否已经供电或正处于特机状态,因此,当计算机正常连接至变换机时,即使计算机处于待机状态(绿色灯被点亮),**指示灯也应当被点亮。否则,就表示发生了连通性故障。

最近在学习uboot,所以选用了较低版本的u-boot-116,移植到mini2440,现在在dm9000网卡驱动这卡住了。

过程是这样的:

1、在board/mini2440/mini24440h中添加dm9000的需要的一些宏定义

C/C++ code

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

#if 0

#define CONFIG_DRIVER_CS8900 1 / we have a CS8900 on-board /

#define CS8900_BASE 0x19000300

#define CS8900_BUS16 1 / the Linux driver does accesses as shorts /

#endif

#define CONFIG_DRIVER_DM9000 1

#define CONFIG_NET_MULTI 1

#define CONFIG_DM9000_NO_SROM 1

#define CONFIG_DM9000_BASE 0x20000300 //网卡片选地址

#define DM9000_IO CONFIG_DM9000_BASE

#define DM9000_DATA (CONFIG_DM9000_BASE + 4) //网卡数据地址

#define CONFIG_BOOTDELAY 3

/#define CONFIG_BOOTARGS "root=ramfs devfs=mount console=ttySA0,9600" /

#define CONFIG_ETHADDR 08:00:3e:26:0a:5b

#define CONFIG_NETMASK 2552552550

#define CONFIG_IPADDR 17231108211//开发板IP地址

#define CONFIG_SERVERIP 1723110866//Linux主机IP地址

以上就是关于idea6410开发板都有哪些功能支持什么 *** 作系统全部的内容,包括:idea6410开发板都有哪些功能支持什么 *** 作系统、烧写程序SJF2440.exe 通过PCMCIA卡做并口来烧写ARM9出错:ERROR: No CPU is detected(ID=0x00000000).、请教关于STM32与DM9000设计方面的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9835296.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存