SD卡是如何通过“lock”键实现写保护的?SD卡lock键坏掉怎么才能用,插入笔记本老提示写保护?

原理很简单,和曾经的磁带“写保护”一样。是通过磁带或者卡上的一个位置开关触发读取机构内的写保护功能,而此开关并不涉及磁带或者卡的任何内部结构,只是起到指示位置的功能。您的问题继续沿用磁带时代的解决办法就可以实现:

磁带时代当“写保护”防抹开关被去掉之后是不可逆的,但又需要抹掉怎么办呢?只需使用胶带将防抹开关处贴上,这样录音机会认为是正常的而可以继续读写。

SD 卡也是同样的,只需想办法使用一个窄条的东西,如细牙签、细纸条等等填充 LOCK 开关空出来的位置,用胶带固定好,就可以继续使用了。亲测,绝对好使。

应邀拍照片上图:

可以看到,这是一张标准的正常的 SD 卡的写保护开关位置。其中黄色的滑块就是写保护开关,曾拆解过,内部没有和卡内的任何地方关联,只是摆在这里起“位置指示作用”。当这个黄色的滑块处于 “非LOCK” 位置时(现在图片上的位置),插入读卡器中,读卡器中有一个簧片开关被这个黄色的突起“顶起”保证连通,此时就告诉读卡器:这张卡是可以读写的。当滑块至于“LOCK”位置时,原有的位置就成了“下凹”区,不能触动相应开关,也就会告诉读卡器,这张卡只能读不能写了。

 作用就是用纸片顶住lock的位置

这样插入笔记本电脑的sd卡槽就不会提示写保护。

终极大法:

如果你不想这么麻烦,还有一个办法。直接用读卡器就不会有这样的烦恼和麻烦了。

因为读卡器一般都不会有笔电卡槽的卡锁设计,而且是通过标准的usb口连接pc或笔电。有了读卡器,你的丢lock键的sd卡就可以用到寿命终止为止了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在C语言中,可以使用以下方法实现多个任务读SD卡: 1. 使用互斥量(Mutex)或信号量(Semaphore)等机制来保证读SD卡的互斥性。在每个需要访问SD卡的任务中,创建一个互斥量或信号量,并在读SD卡的代码段前后加锁和解锁操作。例如: ```c #include <stdio.h> #include <pthread.h> // 互斥量 pthread_mutex_t sd_mutex; // 读SD卡的任务 void *sd_task(void *arg) { // 获取互斥量 pthread_mutex_lock(&sd_mutex); // 读SD卡的代码 // 释放互斥量 pthread_mutex_unlock(&sd_mutex); return NULL; } int main() { // 初始化互斥量 pthread_mutex_init(&sd_mutex, NULL); // 创建多个读SD卡的任务 // ... // 等待任务结束 // ... // 销毁互斥量 pthread_mutex_destroy(&sd_mutex); return 0; } ``` 2. 将SD卡的任务单独放到一个任务中执行,其他任务通过消息队列或事件机制将需要读SD卡的请求发送给该任务。例如: ```c #include <stdio.h> #include <pthread.h> #include <semaphore.h> // 信号量 sem_t sd_sem; // 读SD卡的任务 void *sd_task(void *arg) { while (1) { // 等待信号量 sem_wait(&sd_sem); // 读SD卡的代码 // 发送结果给请求任务 // ... } return NULL; } // 请求SD卡的任务 void *request_task(void *arg) { while (1) { // 发送请求给SD卡任务 // ... // 等待结果 // ... } return NULL; } int main() { // 初始化信号量 sem_init(&sd_sem, 0, 0); // 创建SD卡任务 // ... // 创建请求SD卡的任务 // ... // 等待任务结束 // ... // 销毁信号量 sem_destroy(&sd_sem); return 0; } ``` 这两种方法都需要注意互斥性和同步性,避免多个任务同时访问SD卡造成冲突和数据错误。同时,还需要考虑SD卡访问的可靠性和性能问题,根据具体需求选择合适的读方式和算法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hu5566798

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值