Let's Make Robots!

School Schedule

Hello Everyone,

I have been thinking for a while on a new project. As the title says it, a school schedule.

Now, since I dont have the time to learn C, I went to BASIC from mikro elektronika.

So as always I came up with these questions:

Can I have the PIC16f887 read a ds1306 to tell time, date and so be able to display something like this:


LUNCH - English

16/6/11 1:21 PM


Note that im using a 16x2 LCD

And so it would change the upper display as the day goes by.

The other question is: Can I do this using BASIC or is it not possible?

Thanks in advance.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

exactly what you are after, although, you may require more storage than what the chip has by itself. All you are really doing is setting up an array or pair of arrays and then outputting the data that matches.

I was going to ask about memory, Would I handle it with 1 eeprom chip or would i need more than that,

by the way, do you have an idea of how could I make it know what to output?

For example

When 10:00 display "....."

something like that for each and every thing or is there an other method?



Class[7]="Math,Science,Spanish,Lunch,Study Hall,Band,Government"

Day[35]="M,T,W,R,F,M,0,W,0,F ..."

This would be better;

Class[7]="Math,Science, Metal Fabrication,Lunch,Study Hall, CAD ,Government"

ps metal fabrication is using cnc and laser cutters!

So, Could you explain the class[7] thing and hour[9]

Please? I really dont know what it means...

are called arrays. If you don't know what an array is you may need to do a bit more studying before I get any deeper in my suggestion.

So this would be something like:

Hour[9]:means 9 hours in the array

Class[7]:means 7 classes in the array


Day[35]: Mon, Tue, Wed, Thu, Fri, Sat, Sun, Mon, Tue, Wed, Thu, Fri, Sat, Sun,

Day[35]="M,T,W,R,F,M,0,W,0,F ..."

Because from your array I cant get if you are repeating the days like in mine or what, cause you got those 0`s

Whats are they?

Thanks :)

The number in the []'s is the number of elements in the given array. Therefore, Hours[9]="8,9,10,11,11:30,12,12:30,1,2". Each element can be called by its individual index starting at 0. Hours[0] contains the character 8. You can then compare the time against Hours[x] and then use x to point to the individual courses you might have. Day[35] was an attempt to cover individual days of a given course. The 0's were there in case you have a class only 2 or 3 days a week. If you have a class in the morning one day and afternoon on another, you will have to work up a different set of arrays. Hopefully this gives you a clue as to what I was trying to suggest.

So I believe you made it clear:

Date[7]="Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday"
Hour[12]="8, 9:20, 10:00, 10:40, 10:55, 11:00, 11:40, 12:20, 1:00, 1:40, 1:45, 2:25, 3:05"
Class[13]="Math, Spanish, French, ITC, English, Religion, Economics, PE, Physics, Chemistry, Biology, History"

Now Im not sure if it is "Date" instead of "Day" because when I put "Day" there it underlines it with a small red line like if it was wrong, while when I put "Date" it turns it bold like it does with "Hour" and "Class"

because I didn't know if you would have the same classes everyday at the same time. If that is the case, you won't need a day array. You will have to figure out what day it is so that you don't say you are in class on Saturday or Sunday. Your hour array will likely have to be put in terms that would compare to the time you get from the DS1306. So, rather than 9:20 you may need 920 or whatever the number that is given for 9:20AM.