|
подключить файл с константами, на ассемблере |
|
|
|
May 29 2007, 06:56
|
Участник

Группа: Новичок
Сообщений: 24
Регистрация: 31-05-06
Пользователь №: 17 614

|
может кто знает как прикрутить к проекту файл,он содержит целые числа(8бит) перечисленные через запятую вот кусочек кода из файла .cseg .org 0x100 sie: .db 127,149,170,191,209,224,237,247,252,254,253,247,238,225,210,192,
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 24)
|
May 29 2007, 07:22
|

Местный
  
Группа: Свой
Сообщений: 226
Регистрация: 25-03-05
Из: Беларусь
Пользователь №: 3 672

|
Цитата(Диm @ May 29 2007, 09:56)  может кто знает как прикрутить к проекту файл,он содержит целые числа(8бит) перечисленные через Типа так: Код .INCLUDE "m16def.inc" ; установочный файл для Mega16 .INCLUDE "My_dB_FILE.asm"; твой файл с
--------------------
Ничто так не ограничивает полет мысли программиста, как компилятор
|
|
|
|
|
May 29 2007, 07:53
|
Участник

Группа: Новичок
Сообщений: 24
Регистрация: 31-05-06
Пользователь №: 17 614

|
Цитата(Wild007 @ May 29 2007, 13:22)  Типа так: Код .INCLUDE "m16def.inc" ; установочный файл для Mega16 .INCLUDE "My_dB_FILE.asm"; твой файл с это я сделал... дело в том что вылазит такая ошибка... D:\work\daL'nomer\sourseasm\l4m\lcm_8_bit_6752kHz_32592.asm(5): error: syntax error, unexpected INTEGER
|
|
|
|
|
May 29 2007, 09:02
|
Участник

Группа: Новичок
Сообщений: 24
Регистрация: 31-05-06
Пользователь №: 17 614

|
Цитата(SasaVitebsk @ May 29 2007, 14:20)  Ну так покажи свою пятую строку, а то гадать - бессмысленно. Это не Си. Если ошибка в пятой - значит в пятой. .cseg .org 0x400 sne: .db 127,149,170,191,209,224,237,247,252,254,253,247,238,225,210,192,172,150,128,106, 85,64,46,30,17,8,2,0,1,7,16,28,43,61,81,103,125,147,168,189,207,223,236,246,252, 2 54,253,248,239,227,211,194,174,152,130,108,87,66,48,32,19,9,2,0,1,6,15,27,42,60, 7 9,100,122,145,166,187,205,222,235,245,252,254,253,248,240,228,213,195,176,155,13 3 ,110,89,68,50,33,20,9,3,0,1,5,14,25,40,58,77,98,120,143,164,185,204,220,234,244, 2 51,254,254,249,241,229,214,197,178,157,135,112,91,70,51,35,21,10,3,0,0,5,13,24,3 9 ,56,76,97, и количество цифирек 32592 шт...
|
|
|
|
|
May 29 2007, 09:17
|
Участник

Группа: Новичок
Сообщений: 24
Регистрация: 31-05-06
Пользователь №: 17 614

|
Цитата(zltigo @ May 29 2007, 15:10)  Вопрос на засыпку - а сколько, по Вашему памяти в Atmega16? в меге16 16383 байта памяти,у меня то стоит мега64 и в ней 65535 байт и на всё про всё должно хватать! мда...молодой я ещё и только сейчас понял что вопрос поставлен некорректно!!!! как прикрутить к проекту на ассемблере файл констант который содержит 32592 значения(8бит) на си это понятно как сделать,а вот тут возникла проблема...
Сообщение отредактировал Диm - May 29 2007, 09:27
|
|
|
|
|
May 29 2007, 09:39
|

Местный
  
Группа: Свой
Сообщений: 226
Регистрация: 25-03-05
Из: Беларусь
Пользователь №: 3 672

|
Цитата(Диm @ May 29 2007, 12:17)  на си это понятно как сделать,а вот тут возникла проблема... Да нет никакой прблемы с размещением в достаточном количесве памяти переменных. Ошибка Цитата дело в том что вылазит такая ошибка... D:\work\daL'nomer\sourseasm\l4m\lcm_8_bit_6752kHz_32592.asm(5): error: syntax error, unexpected INTEGER в ассемблировании текста самой программы возникает в пятой строке. Вот ее и покажи (хотябы)
--------------------
Ничто так не ограничивает полет мысли программиста, как компилятор
|
|
|
|
|
May 29 2007, 09:43
|

Местный
  
Группа: Свой
Сообщений: 345
Регистрация: 10-10-05
Пользователь №: 9 459

|
Цитата как прикрутить к проекту на ассемблере файл констант который содержит 32592 значения(8бит) думаю файл надо перелопачивать на предмет установки в каждой строчке! дерективы ".db".. просто набор цифирек(типа тхт) наверное незя. Цитата ке. Вот ее и покажи (хотябы) Дык уже превел.. см. выше. Там как раз .db и нет..
--------------------
Если задачу можно решить, то не надо тревожиться. А если нельзя решить, то тревожиться бесполезно.
|
|
|
|
|
May 29 2007, 09:54
|
Участник

Группа: Новичок
Сообщений: 24
Регистрация: 31-05-06
Пользователь №: 17 614

|
Цитата(add @ May 29 2007, 15:43)  думаю файл надо перелопачивать на предмет установки в каждой строчке! дерективы ".db".. хотелось бы без этого.....
|
|
|
|
|
May 29 2007, 10:13
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(Диm @ May 29 2007, 12:54)  хотелось бы без этого..... А каким компилятором пользуетесь? Или "голый" ассемблер avrasm? Если компилятор, то может сделать из этого файла с-файл, а из ассемблера его через extern? Код My_dB_FILE.c: unsigned char const __flash sne[] @ 0x400 = {127,149,170,1...... };
lcm_8_bit_6752kHz_32592.asm: extern sne Хотя проставить в каждую строчку .db через Ctrl-C, Ctrl-V займет гораздо меньше времени чем искать другое решение.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
May 29 2007, 10:36
|
Участник

Группа: Новичок
Сообщений: 24
Регистрация: 31-05-06
Пользователь №: 17 614

|
Цитата(Сергей Борщ @ May 29 2007, 16:13)  А каким компилятором пользуетесь? Или "голый" ассемблер avrasm? Если компилятор, то может сделать из этого файла с-файл, а из ассемблера его через extern? Код My_dB_FILE.c: unsigned char const __flash sne[] @ 0x400 = {127,149,170,1...... };
lcm_8_bit_6752kHz_32592.asm: extern sne Хотя проставить в каждую строчку .db через Ctrl-C, Ctrl-V займет гораздо меньше времени чем искать другое решение. компилятор авр-студия...
|
|
|
|
|
May 29 2007, 19:23
|
Знающий
   
Группа: Свой
Сообщений: 781
Регистрация: 3-10-04
Из: Санкт-Петербург
Пользователь №: 768

|
Цитата(Диm @ May 29 2007, 12:02)  .cseg .org 0x400 sne: .db 127,149,170,191,209,224,237,247,252,254,253,247,238,225,210,192,172,150,128,106, 85,64,46,30,17,8,2,0,1,7,16,28,43,61,81,103,125,147,168,189,207,223,236,246,252, 2 54,253,248,239,227,211,194,174,152,130,108,87,66,48,32,19,9,2,0,1,6,15,27,42,60, 7 9,100,122,145,166,187,205,222,235,245,252,254,253,248,240,228,213,195,176,155,13 3 ,110,89,68,50,33,20,9,3,0,1,5,14,25,40,58,77,98,120,143,164,185,204,220,234,244, 2 51,254,254,249,241,229,214,197,178,157,135,112,91,70,51,35,21,10,3,0,0,5,13,24,3 9 ,56,76,97,
и количество цифирек 32592 шт... У тебя в 5-й строчке от .db после 2 не поставлена запятая.
|
|
|
|
|
May 30 2007, 06:32
|

Местный
  
Группа: Свой
Сообщений: 345
Регистрация: 10-10-05
Пользователь №: 9 459

|
Цитата У тебя в 5-й строчке от .db после 2 не поставлена запятая. Уверяю Вас, енто непричем:-) И ваще формат такой должен быть: .db XXX,XXX .db XXX,XXX,XXX,XX .dw XXXXX,XXX,XXX обязательно четное кол-во(уже говорили),(в противном случае теряем байт, и получаем возможные ошибки при некоректно написанной программе) т.к. адресация в сегменте кода по словам, а не по байтам. (на всякий пажарный для сомневающихся цитата из хелпа : Syntax: LABEL: .DB expressionlist Example: .CSEG consts: .DB 0, 255, 0b01010101, -128, 0xaa .ESEG const2: .DB 1,2,3 ) Обратите внимание что кол-во байт нечетное,:-) а паЧаму? а потаму что последняя строчка массива:-) и здесь можно забить на четность,хотя компилятор ругнется и проглотит.
--------------------
Если задачу можно решить, то не надо тревожиться. А если нельзя решить, то тревожиться бесполезно.
|
|
|
|
|
Jun 1 2007, 11:08
|
Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 12-03-06
Из: Москва
Пользователь №: 15 142

|
Оказывается, иногда полезно читать хелпы.  Когда понадобилось, сразу нашел Цитата Like in C, source lines can be continued by means of having a backslash (\) as the last character of a line. This is particularly useful when defining long preprocessor macros, and for long .db directives.
Example .db 0, 1, "This is a long string", '\n', 0, 2, \ "Here is another one", '\n', 0, 3, 0
|
|
|
|
|
Jun 1 2007, 12:35
|

Местный
  
Группа: Свой
Сообщений: 345
Регистрация: 10-10-05
Пользователь №: 9 459

|
Цитата Оказывается, иногда полезно читать хелпы. Когда понадобилось, сразу нашел Не знал :-/ Хотя вставлять "/" в каждую строчку сравнимо со вставкой ".db".
--------------------
Если задачу можно решить, то не надо тревожиться. А если нельзя решить, то тревожиться бесполезно.
|
|
|
|
|
Jun 1 2007, 12:51
|
Местный
  
Группа: Свой
Сообщений: 446
Регистрация: 12-03-06
Из: Москва
Пользователь №: 15 142

|
Цитата(add @ Jun 1 2007, 15:35)  Не знал :-/ Хотя вставлять "/" в каждую строчку сравнимо со вставкой ".db". Так таблица с нечетным числом столбцов получается нагляднее.
|
|
|
|
|
Jun 3 2007, 11:12
|
Группа: Новичок
Сообщений: 8
Регистрация: 7-04-07
Из: Пермь
Пользователь №: 26 848

|
попробовал скомпилить пример для LCD http://atmel.ru/Articles/Atmel17_app3.htm статья http://atmel.ru/Articles/Atmel17.htmКод .org $200 rus_buf: .DB $11,$11,$11,$11,$0F,$01,$01,$00 .DB $12,$12,$12,$12,$12,$12,$1f,$01 .DB $1f,$11,$11,$11,$11,$11,$11,$00 text: .DB ' ',' ',' ',' ','O','T','C',0,'E','T' .DB ' ','c',' ','A',1,2,':',' ',' ',' ' на строчке text: D:\MK_rab\AVRstd\AvrStudio4\lcd.asm(160): error: syntax error, unexpected INTEGER не понимаю, что ей не нравится?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|