2010-10-02 阴天 有时还下小雨
昨天把AT24C08调通了。我修改了亮度检测电路,将采样数据直接记录到EEPROM里面,等试验结束后,再从EEPROM里面读出数据即可。这样做的好处就是不用整晚开着电脑了,节约电能,是不是很绿色很环保呢?
这是我试验的电路。我直接在面包板上插的,单片机是STC12C2052AD,E2PROM是ATMEL 24C08A。
顺便提一下,24C08是一个1K字节的E2PROM。如果1分钟采样一次,每次采样值是1个字节,那么24C08可以存放1024个采样值,也就是17+个小时的采样数据,对我来说足够用了。
试验从1:08开始。失败的地方是我忘了记录结束时间就关机了,过了一会才想起来,大概结的束时间在9:55左右吧。
苏州今天的日出时间是5:51,与试验数据还是比较吻合的(试验数据是在5:54分的时候出现了0x01)。下面是试验原始数据记录:(1:08开始,每1分钟采样一次,一行是20分钟数据。数值是光线强度的量化值,16进制,最暗为0x00,最亮为0xFF。光传感器放在西面房间的工作台上。关窗,开窗帘。)
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1:27
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1:47
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2:07
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2:27
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2:47
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3:07
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3:27
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3:47
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4:07
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4:27
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4:47
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5:07
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5:27
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5:47
00 00 00 00 00 00 01 01 01 01 01 01 01 02 02 03 03 04 04 04 6:07
04 04 04 05 05 06 06 06 06 07 07 08 09 0A 0C 0D 0E 0F 10 11 6:27
12 13 14 14 14 14 14 15 16 17 17 18 18 18 19 1B 1C 1E 20 20 6:47
20 1F 1E 1D 1D 1E 1E 1F 1F 1F 1F 1F 1F 20 20 21 21 22 23 24 7:07
26 27 26 26 26 26 27 27 26 24 24 23 24 24 26 28 2A 2C 2E 2F 7:27
31 33 36 38 3B 3E 41 43 42 41 40 3F 3D 3D 3E 40 42 45 46 45 7:47
46 47 4A 4C 4E 50 52 55 57 57 54 4E 4A 47 45 44 44 44 43 42 8:07
41 40 3F 3F 40 40 41 42 43 44 45 46 48 49 49 48 47 46 46 47 8:27
49 4B 4C 4C 4C 4D 3B 22 22 23 23 23 24 24 24 26 27 28 27 26 8:47
26 26 51 4D 4E 4D 4D 2F 52 52 44 4F 50 50 50 50 4F 4E 4E 4F 9:07
50 51 51 52 52 52 52 52 52 52 51 51 51 51 51 50 4F 4F 4E 4D 9:27
4C 4B 4B 2F 4F 51 51 4F 4E 4F 50 52 53 54 55 56 57 58 58 58 9:47
57 56
采样时间实际是1分钟多一点点(1秒以内),我用循环做延时的,不是很准确,这个部分还需要增强。
根据上面的数据,画出的光线强度和时间的关系图如下:
特别说明一下,这个图里面的数据我微调了一下:这个图的数据开始时间是1:01,我在原始数据前面插了7个0进去,这样就把开始时间从1:08修改到了1:01。这样做是为了让横坐标上显示的时间为正点或半点,而不用出现07分这样的值了。
关于横坐标,每条绿线是1个小时,每条灰线是15分钟。
关于纵坐标,光线最弱是0,最强是256。
*********************
今晚又做了日落光线变化的试验,与上面的原理一样,我就不罗嗦了,只是稍微修改了一下程序,延时更加精确而已。
下面是原始数据:(试验13:05开始,20:40结束,每分钟1个采样点,每个点是当时光强度的量化值,16进制。光传感器放在东面房间的窗台上。关窗。)
D5 D5 D6 D7 D6 D4 D1 CF CE CD CC CB CA C8 C7 C7 C5 C3 C0 BE 13:24
BF C1 C2 C3 C3 C1 BE BC BA B9 BA BB BC BE C0 C1 C3 C5 C8 CA 13:44
CB CA C8 C6 C6 C6 C7 C8 C9 C9 C8 C8 C6 C4 C2 BF BE BE BE BE 14:04
BD BB BB BA B9 B8 B7 B5 B2 B0 AF AF AF AF AF AF B1 B2 B4 B5 14:24
B6 B8 B9 B9 B8 B7 B7 B8 B8 B7 B6 B6 B5 B4 B3 B3 B3 B3 B4 B4 14:44
B5 B6 B7 B6 B5 B4 B2 AF AC AA AA AA AB AA A8 A8 A9 A4 A6 A6 15:04
A6 A6 A5 A4 A3 A5 A8 A9 AA AC AF B2 B3 B3 B5 B8 BA BA BA BB 15:24
BC BC BB BB BA B9 B8 B7 B6 B5 B6 B7 B8 B9 BA B8 B5 B1 AF AD 15:44
AC AB AA AA A8 A4 A1 A3 A7 AB AD AF B1 B1 AE AA A7 A5 A0 98 16:04
8F 8A 87 84 82 81 80 82 84 85 83 81 7F 7C 7C 80 83 83 82 83 16:24
87 8A 88 84 85 87 86 80 7B 79 79 7A 7D 80 82 80 7D 78 73 70 16:44
6D 6A 66 62 5F 5D 5C 5B 5B 5A 58 55 54 54 54 54 54 52 51 4F 17:04
4C 4A 49 49 49 48 45 42 3E 3A 36 32 2F 2C 2A 28 25 22 20 1D 17:24
1C 1B 1A 18 16 14 12 11 0F 0E 0D 0B 0A 08 07 06 05 04 03 03 17:44
02 02 02 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18:04
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18:24
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 18:44
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 19:04
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 19:24
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 19:44
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20:04
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20:24
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00