Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Nokia 1110

Сообщений 1 страница 11 из 11

1

Помогите с кодом. При компиляции выдает ошибку.

Код:
'****************************************************************************************************************
'*                                                                                                              *
'* Date       : 18/05/2012                                                                                      *
'* Filename   : asynch_timer.bas                                                                                *
'* Revision   : 1.0                                                                                             *
'* Controller : ATMEGA8                                                                                         *
'* Compiler   : BASCOM-AVR 1.11.9.8                                                                             *
'* Author     : edm2007                                                                                         *
'* WWW        : http://edm2007.narod.ru                                                                         *
'* Mail       : edm2007@mail.ru                                                                                 *
'*                                                                                                              *
'****************************************************************************************************************

'************************************************[Îïèñàíèå ïðîãðàììû]********************************************

' Àñèíõðîííûé ðåæèì ðàáîòû òàéìåðà. ×àñû íà åãî îñíîâå. Èíäèêàòîð ñåìèñåãìåíòíûé, 4 ðàçðÿäà ñ ÎÊ.

'****************************************************************************************************************

'*********************************************[Ïñåâäîêîìàíäû óïðàâëåíèÿ]*****************************************

$regfile = "m8def.dat"                                      ' òèï ÌÊ
$crystal = 4000000                                          ' âûáîð êðèñòàëà äëÿ ðàñ÷åòà çàäåðæåê
'$sim


'* * * êîíôèãóðèðóåì ïèíû

Config Int0 = Rising
On Int0 Startds Nosave

Config Pinb.1 = Input
Config Pinb.2 = Input
Config Pinb.3 = Input

Setting Alias Pinb.1
Plus Alias Pinb.2
Minus Alias Pinb.3

'*********************************************[Èíèöèàëèçàöèÿ ïðåðûâàíèé]*****************************************

Config Timer0 = Timer , Prescale = 64                       ' êîíôèãóðèðóåì òàéìåð (~250 Ãö)
On Timer0 Refresh                                           ' îáçûâàåì ïðåðûâàíèå

Enable Interrupts                                           ' ðàçðåøàåì âñå ïðåðûâàíèÿ
Enable Timer0                                               ' è äëÿ òàéìåðà â ÷àñòíîñòè (èíäèêàöèÿ)

Config Clock = Soft                                         ' àñèíõðîííûé ðåæèì òàéìåðà Ò2
Time$ = "12:00:00"                                          ' íà÷àëüíîå çíà÷åíèå âðåìåíè

'* * * Êîíôèãóðèðóåì äèñïëåé, ïèíû ìê ìîãóò áûòü ëþáûìè

Nokia_spi_data Alias Portc.4 : Config Portc.4 = Output      'MOSI       - ìîæíî çàäàòü ëþáóþ íîæêó
Nokia_spi_clock Alias Portc.3 : Config Portc.3 = Output     'SCK        - ìîæíî çàäàòü ëþáóþ íîæêó
Nokia_cs Alias Portc.2 : Config Portc.2 = Output            'CS         - ìîæíî çàäàòü ëþáóþ íîæêó
Display_reset Alias Portc.1 : Config Portc.1 = Output       'LCD_RESET  - ìîæíî çàäàòü ëþáóþ íîæêó
Display_reset = 1
Nokia_cs = 1

Declare Sub Nokia_init()
Declare Sub Nokia_clear()
Declare Sub Nokia_text(byval Nokia_x As Byte , Byval Nokia_y As Byte , Byval Nokia_text As String , Byval Nokia_inversion As Byte)
Declare Sub Nokia_picture(bylabel Nokia_label As Word)

Dim W As Iram Word At 8 Overlay
Dim Nokia_data_9 As Integer

Call Nokia_init()                                           ' Èíèöèàëèçèðóåì äèñïëåé

Nokia_data_9 = &HC8 : Gosub Nokia_out_cmd


'Call Nokia_picture(ramka)                                   'ðèñóåì ðàìêó

Enable Interrupts
Enable Int0

Dim Hour As String * 2
Dim Minute As String * 2
Dim Second As String * 2

Do

 Hour = Str(_hour)
 Minute = Str(_min)
 Second = Str(_sec)
 Hour = Format(hour , "00")
 Minute = Format(minute , "00")
 Second = Format(second , "00")

 Gosub Nokia_hour

 Call Nokia_text(7 , 2 , ":" , 0)

 Gosub Nokia_minute

 Call Nokia_text(10 , 2 , ":" , 0)

 Call Nokia_text(11 , 2 , Second , 0)

Loop


Nokia_hour:

Call Nokia_text(5 , 2 , Hour , N)

Return

Nokia_minute:

Call Nokia_text(8 , 2 , Minute , N)

Return


End                                                         'end program

$include "Nokia-1100 Library.inc"                           'ñàìà áèáëèîòåêà
$inc Ramka , 74 , "ramka.bgf"                               'êàðòèíêà - ðàìêà

0

2

немного не тот  код. вот тот самый код

Код:
'*********************************************[Ïñåâäîêîìàíäû óïðàâëåíèÿ]*****************************************

$regfile = "m8def.dat"                                      ' òèï ÌÊ
$crystal = 4000000                                          ' âûáîð êðèñòàëà äëÿ ðàñ÷åòà çàäåðæåê
'$sim


Config Timer0 = Timer , Prescale = 64                       ' êîíôèãóðèðóåì òàéìåð (~250 Ãö)
On Timer0 Refresh                                           ' îáçûâàåì ïðåðûâàíèå

Enable Interrupts                                           ' ðàçðåøàåì âñå ïðåðûâàíèÿ
Enable Timer0                                               ' è äëÿ òàéìåðà â ÷àñòíîñòè (èíäèêàöèÿ)

Config Clock = Soft                                         ' àñèíõðîííûé ðåæèì òàéìåðà Ò2
Time$ = "12:00:00"                                          ' íà÷àëüíîå çíà÷åíèå âðåìåíè


Config Int0 = Rising
On Int0 Startds Nosave

Config Pinb.1 = Input
Config Pinb.2 = Input
Config Pinb.3 = Input

Setting Alias Pinb.1
Plus Alias Pinb.2
Minus Alias Pinb.3

'* * * Êîíôèãóðèðóåì äèñïëåé, ïèíû ìê ìîãóò áûòü ëþáûìè

Nokia_spi_data Alias Portc.4 : Config Portc.4 = Output      'MOSI       - ìîæíî çàäàòü ëþáóþ íîæêó
Nokia_spi_clock Alias Portc.3 : Config Portc.3 = Output     'SCK        - ìîæíî çàäàòü ëþáóþ íîæêó
Nokia_cs Alias Portc.2 : Config Portc.2 = Output            'CS         - ìîæíî çàäàòü ëþáóþ íîæêó
Display_reset Alias Portc.1 : Config Portc.1 = Output       'LCD_RESET  - ìîæíî çàäàòü ëþáóþ íîæêó
Display_reset = 1
Nokia_cs = 1

Declare Sub Nokia_init()
Declare Sub Nokia_clear()
Declare Sub Nokia_text(byval Nokia_x As Byte , Byval Nokia_y As Byte , Byval Nokia_text As String , Byval Nokia_inversion As Byte)
Declare Sub Nokia_picture(bylabel Nokia_label As Word)

Dim W As Iram Word At 8 Overlay
Dim Nokia_data_9 As Integer

Call Nokia_init()                                           ' Èíèöèàëèçèðóåì äèñïëåé

Nokia_data_9 = &HC8 : Gosub Nokia_out_cmd


Dim Hour As String * 2
Dim Minute As String * 2
Dim Second As String * 2

Dim N As Byte


'Call Nokia_picture(ramka)                                   'ðèñóåì ðàìêó

Enable Interrupts
Enable Int0

Do                                                          'îñíîâíîé öèêë.

If Setting = 0 Then Gosub Settime                           'Ïðîâåðêà êíîïêè "óñòàíîâêà âðåìåíè"

Loop

Startds:


Hour = Str(_hour)
Minute = Str(_min)
Second = Str(_sec)

Hour = Format(hour , "00")
Minute = Format(minute , "00")
Second = Format(second , "00")

N = 0

Gosub Nokia_hour

Call Nokia_text(7 , 2 , ":" , 0)

Gosub Nokia_minute

Call Nokia_text(10 , 2 , ":" , 0)

Call Nokia_text(11 , 2 , Second , 0)


Return

Settime:

'óñòàíîâêà âðåìåíè, äàòû è äíÿ íåäåëè
'Pinb.1 - ñëåäóþùåå ïîëå, pinb.2 è 3 - ïëþñ è ìèíóñ.

Disable Interrupts
Disable Int0

Waitms 200

N = 1 : Gosub Nokia_hour

Call Nokia_text(10 , 2 , ":00" , 0)
'Call Nokia_text(Ñòîëáåö, ñòðîêà, çíà÷åíèå èëè òåêñò, 0 èëè 1 (1-èíâåðñèÿ, 0 - íåò)

Do

If Plus = 0 Then
_hour = _hour + 1
If _hour > 23 Then _hour = 0
Hour = Str(_hour)
Hour = Format(hour , "00")
N = 1 : Gosub Nokia_hour

Waitms 200
End If

If Minus = 0 Then
_hour = _hour - 1
If _hour > 23 Then _hour = 23
Hour = Str(_hour)
Hour = Format(hour , "00")
N = 1 : Gosub Nokia_hour

Waitms 200
End If

If Setting = 0 Then
Waitms 200
Goto Setminute
End If

Loop

Setminute:

N = 0 : Gosub Nokia_hour
N = 1 : Gosub Nokia_minute

Do

If Plus = 0 Then
_min = _min + 1
If _min > 59 Then _min = 0
Minute = Str(_min)
Minute = Format(minute , "00")
N = 1 : Gosub Nokia_minute
Waitms 200
End If

If Minus = 0 Then
_min = _min - 1
If _min > 59 Then _min = 59
Minute = Str(_min)
Minute = Format(minute , "00")
N = 1 : Gosub Nokia_minute
Waitms 200
End If

Loop


Nokia_hour:

Call Nokia_text(5 , 2 , Hour , N)

Return

Nokia_minute:

Call Nokia_text(8 , 2 , Minute , N)

Return


End

$include "Nokia-1100 Library.inc"                           'ñàìà áèáëèîòåêà
'$inc Ramka , 74 , "ramka.bgf"                               'êàðòèíêà - ðàìêà

0

3

Ну ошибки сюда же линкануть западло? Мы тут не телепаты или вы думаете каждый будет создавать проект, кидать ваш код, компилять и созерцать ошибки..)))

0

4

Уважаемый RDW.
Ошибки линкануть не трудно. Я всегда готов предоставить необходимую информацию. Вот ошибки, которые выдает Bascom.
Error : 61    Line :   183   Label not found [REFRESH                         ]  , in File : C:\Users\Екатерина\Desktop\Для работы\казус\Bascom_AVR\освоение программы\Софтовые часы\с экраном сотового\clock_n6085_v2.bas
Error : 61    Line :   183   Label not found [REFRESH                         ]  , in File : C:\Users\Екатерина\Desktop\Для работы\казус\Bascom_AVR\освоение программы\Софтовые часы\с экраном сотового\clock_n6085_v2.bas

0

5

TAlex
вы - шутник!
1. не создавать пути с НЕ латинскими символами
2. не запускать компиляцию с Рабочего стола

0

6

Александр Д. написал(а):

TAlex
вы - шутник!
1. не создавать пути с НЕ латинскими символами
2. не запускать компиляцию с Рабочего стола

Исправил Ваши замечания, но результат тотже
Error : 61    Line :   185   Label not found [REFRESH                         ]  , in File : C:\project\clock_n6085_v2.bas
Error : 61    Line :   185   Label not found [REFRESH                         ]  , in File : C:\project\clock_n6085_v2.bas

0

7

TAlex написал(а):

Исправил Ваши замечания, но результат тотже
Error : 61    Line :   185   Label not found [REFRESH                         ]  , in File : C:\project\clock_n6085_v2.bas
Error : 61    Line :   185   Label not found [REFRESH                         ]  , in File : C:\project\clock_n6085_v2.bas

Mrshilov написал(а):

У меня нормально компилится, если убрать строку On Timer0 Refresh, т.к. она никуда не ведет - нет подпрограммы обработки этого прерывания.

У меня тоже нормально, если убрать строку On Timer0 Refresh.

Отредактировано max (2012-09-09 21:09:52)

0

8

Спасибо.
Убрал строку On Timer0 Refresh и все заработало, но не так как надо. Главное откомпилировалось.

0

9

Так в чём вопрос то,там же в коде ошибки четко на английском написано"Метка не найдена" и название этой метки Refresh. Те ссылка на эту метку есть,а её самой нету.Вот компилятор и пишет вам это.А чтобы у вас всё заработало как положено,нужно дописать как раз обработчик прерывания Refresh.

0

10

Hello Friend
I want to make. Fonts for LCD  1100
English alphabet font. Big and Small
Please help me. :flag:

0

11

Mrshilov написал(а):

Small font already exists in library. Big fonts you can make like here.


Thank you my friend
But I want to use the same font in a program of
Is not apart
I want to make both large and small fonts., In a header file.

0