Hi, have you tried another sd card? What PIC are you using?

Please try example 3 in the sample

;   
--------------------------------------------------------------------------------
;   -- EXAMPLE #3 write to 2 sectors using a sector buffer at a address
;   -- user friendly and fastest.
;   
--------------------------------------------------------------------------------
;   -- fill the sector buffer with data
;   for 512 using step1 loop                     -- loop till the end of 
the sector buffer
;      sd_sector_buffer[step1] = "B"             -- set each byte of data
;   end loop
;   -- write the sector buffer to sector 20
;   sd_write_sector_address(20)
;   for 512 using step1 loop                     -- loop till the end of 
the sector buffer
;      sd_sector_buffer[step1] = "C"             -- set each byte of data
;   end loop
;   -- write the sector buffer to sector 21
;   sd_write_sector_address(21)
;   --
;   -- read back the same sectors
;   -- read sector 20 into the sector buffer
;   sd_read_sector_address(20)
;   -- now send it to the serial port
;   for 512 using step1 loop                     -- loop till the end of 
the sector buffer
;      serial_write (sd_sector_buffer[step1]) -- send each byte via serial 
port
;   end loop
;   -- read sector 21 into the sector buffer
;   sd_read_sector_address(21)
;   -- now send it to the serial port
;   for 512 using step1 loop                     -- loop till the end of 
the sector buffer
;      serial_write (sd_sector_buffer[step1]) -- send each byte via serial 
port
;   end loop

Matt.

On Monday, February 20, 2023 at 12:12:04 PM UTC-5 [email protected] wrote:

> Hi Matt
> I think this is a question for you. You made a beautiful sample for 
> writing to a sd card.
> Every  start of the program I use the part of your lib to control the 
> connection to the sd card.
> I can write and read the sd card byte for byte. I use a bitmap image of 
> Marilyn Monroe of 504 bytes.
>
> The half of the next program works perfect:
> var byte gegeven
> var byte data
> var word step1
> var word teller
>
> sd_start_write(50)          
>    for count(marilyn) using teller loop
>       sd_data_byte = marilyn[teller]
>    end loop
> sd_stop_write
> This works perfect.
>
>
> I also tried to write to the sd card with a 'sector buffer' because most 
> arrays are larger.
> But first the array of Marilyn. It can be written in one sector.
> Attempt 1:
> print_string(serial_data, "Writing to sector 100")
> print_crlf(serial_data)
>
> sd_start_write(100)        
> --fill the sector buffer
>    for 512 using teller loop
>       sd_sector_buffer[teller] = marilyn[teller]
>    end loop
> --    write the sector buffer to sector 100
>    sd_write_sector_address(100)
> sd_stop _write
>
> I also tried:
> Attempt 2:
>
>   sd_start_write(150)
>         for 512 using step1 loop
>            gegeven = marilyn[step1]
>            sd_sector_buffer[step1] = gegeven
>        end loop
> -- write the sector buffer to the sd card
>  sd_write_sector()
>  sd_stop _write
>
> Both attempts does not work.
> I get rubbish when I read the sectors.
> Can you tell me how I get it working.
>
> Regards,
> Peter
>

-- 
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jallib/8415623e-2bbb-424c-9498-cd9b3c3b651cn%40googlegroups.com.

Reply via email to